Whitespace

This commit is contained in:
Magne Sjaastad 2018-09-12 13:46:03 +02:00
parent 67b9561c04
commit 20facfd583
5 changed files with 225 additions and 228 deletions

View File

@ -25,15 +25,17 @@
#include "RigCaseCellResultsData.h"
#include "RigReservoirGridTools.h"
#include "Rim3dView.h"
#include "RimCase.h"
#include "RimEclipseView.h"
#include "RimProject.h"
#include "RimReservoirCellResultsStorage.h"
#include "RimTools.h"
#include "Rim3dView.h"
#include "cafPdmPointer.h"
// clang-format off
namespace caf
{
template<>
@ -75,17 +77,18 @@ RimMultiSnapshotDefinition::RimMultiSnapshotDefinition()
CAF_PDM_InitFieldNoDefault(&additionalCases, "AdditionalCases", "Cases", "", "", "");
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimMultiSnapshotDefinition::~RimMultiSnapshotDefinition()
{
}
// clang-format on
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QList<caf::PdmOptionItemInfo> RimMultiSnapshotDefinition::calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions, bool * useOptionsOnly)
RimMultiSnapshotDefinition::~RimMultiSnapshotDefinition() {}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QList<caf::PdmOptionItemInfo> RimMultiSnapshotDefinition::calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions,
bool* useOptionsOnly)
{
QList<caf::PdmOptionItemInfo> options;
@ -95,7 +98,7 @@ QList<caf::PdmOptionItemInfo> RimMultiSnapshotDefinition::calculateValueOptions(
std::vector<Rim3dView*> views;
RimProject* proj = RiaApplication::instance()->project();
RimProject* proj = RiaApplication::instance()->project();
std::vector<RimCase*> cases;
proj->allCases(cases);
@ -114,8 +117,10 @@ QList<caf::PdmOptionItemInfo> RimMultiSnapshotDefinition::calculateValueOptions(
}
else if (fieldNeedingOptions == &eclipseResultType)
{
options.push_back(caf::PdmOptionItemInfo(caf::AppEnum<RiaDefines::ResultCatType>(RiaDefines::DYNAMIC_NATIVE).uiText(), RiaDefines::DYNAMIC_NATIVE));
options.push_back(caf::PdmOptionItemInfo(caf::AppEnum<RiaDefines::ResultCatType>(RiaDefines::STATIC_NATIVE).uiText(), RiaDefines::STATIC_NATIVE));
options.push_back(caf::PdmOptionItemInfo(caf::AppEnum<RiaDefines::ResultCatType>(RiaDefines::DYNAMIC_NATIVE).uiText(),
RiaDefines::DYNAMIC_NATIVE));
options.push_back(caf::PdmOptionItemInfo(caf::AppEnum<RiaDefines::ResultCatType>(RiaDefines::STATIC_NATIVE).uiText(),
RiaDefines::STATIC_NATIVE));
}
else if (fieldNeedingOptions == &selectedEclipseResults)
{
@ -149,7 +154,7 @@ QList<caf::PdmOptionItemInfo> RimMultiSnapshotDefinition::calculateValueOptions(
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimMultiSnapshotDefinition::getTimeStepStrings(QList<caf::PdmOptionItemInfo> &options)
void RimMultiSnapshotDefinition::getTimeStepStrings(QList<caf::PdmOptionItemInfo>& options)
{
if (!view()) return;
@ -166,7 +171,9 @@ void RimMultiSnapshotDefinition::getTimeStepStrings(QList<caf::PdmOptionItemInfo
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimMultiSnapshotDefinition::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue)
void RimMultiSnapshotDefinition::fieldChangedByUi(const caf::PdmFieldHandle* changedField,
const QVariant& oldValue,
const QVariant& newValue)
{
if (changedField == &eclipseResultType)
{
@ -174,8 +181,8 @@ void RimMultiSnapshotDefinition::fieldChangedByUi(const caf::PdmFieldHandle* cha
}
else if (changedField == &sliceDirection)
{
const cvf::StructGridInterface* mainGrid = nullptr;
const RigActiveCellInfo* actCellInfo = nullptr;
const cvf::StructGridInterface* mainGrid = nullptr;
const RigActiveCellInfo* actCellInfo = nullptr;
if (view())
{
@ -221,8 +228,7 @@ void RimMultiSnapshotDefinition::fieldChangedByUi(const caf::PdmFieldHandle* cha
}
startSliceIndex = minInt;
endSliceIndex = maxInt;
endSliceIndex = maxInt;
}
startSliceIndex.uiCapability()->updateConnectedEditors();
@ -235,7 +241,7 @@ void RimMultiSnapshotDefinition::fieldChangedByUi(const caf::PdmFieldHandle* cha
QList<caf::PdmOptionItemInfo> RimMultiSnapshotDefinition::toOptionList(const QStringList& varList)
{
QList<caf::PdmOptionItemInfo> optionList;
int i;
int i;
for (i = 0; i < varList.size(); ++i)
{
optionList.push_back(caf::PdmOptionItemInfo(varList[i], varList[i]));

View File

@ -28,6 +28,7 @@
#include "RigGeoMechCaseData.h"
#include "RigMainGrid.h"
#include "Rim3dView.h"
#include "RimCase.h"
#include "RimCellRangeFilter.h"
#include "RimCellRangeFilterCollection.h"
@ -39,11 +40,10 @@
#include "RimGeoMechCellColors.h"
#include "RimGeoMechPropertyFilterCollection.h"
#include "RimGeoMechView.h"
#include "RimIntersectionCollection.h"
#include "RimProject.h"
#include "Rim3dView.h"
#include "RimViewLinker.h"
#include "RimViewLinkerCollection.h"
#include "RimIntersectionCollection.h"
#include "RiuViewer.h"
@ -55,8 +55,10 @@ CAF_PDM_SOURCE_INIT(RimViewController, "ViewController");
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimViewController::RimViewController(void)
RimViewController::RimViewController()
{
// clang-format off
CAF_PDM_InitObject("View Link", "", "", "");
CAF_PDM_InitField(&m_isActive, "Active", true, "Active", "", "", "");
@ -83,12 +85,14 @@ RimViewController::RimViewController(void)
CAF_PDM_InitField(&m_syncRangeFilters, "SyncRangeFilters", false, "Range Filters", "", "", "");
CAF_PDM_InitField(&m_syncPropertyFilters, "SyncPropertyFilters", false,"Property Filters", "", "", "");
// clang-format on
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimViewController::~RimViewController(void)
RimViewController::~RimViewController()
{
this->removeOverrides();
}
@ -96,13 +100,14 @@ RimViewController::~RimViewController(void)
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QList<caf::PdmOptionItemInfo> RimViewController::calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions, bool * useOptionsOnly)
QList<caf::PdmOptionItemInfo> RimViewController::calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions,
bool* useOptionsOnly)
{
QList<caf::PdmOptionItemInfo> options;
if (fieldNeedingOptions == &m_managedView)
{
RimProject* proj = RiaApplication::instance()->project();
RimProject* proj = RiaApplication::instance()->project();
std::vector<RimGridView*> views;
proj->allNotLinkedViews(views);
@ -124,7 +129,7 @@ QList<caf::PdmOptionItemInfo> RimViewController::calculateValueOptions(const caf
}
}
if (options.size() > 0)
if (!options.empty())
{
options.push_front(caf::PdmOptionItemInfo("None", nullptr));
}
@ -145,7 +150,9 @@ void RimViewController::defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrder
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimViewController::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue)
void RimViewController::fieldChangedByUi(const caf::PdmFieldHandle* changedField,
const QVariant& oldValue,
const QVariant& newValue)
{
if (changedField == &m_isActive)
{
@ -164,7 +171,7 @@ void RimViewController::fieldChangedByUi(const caf::PdmFieldHandle* changedField
{
updateCameraLink();
}
else if (changedField == &m_syncTimeStep )
else if (changedField == &m_syncTimeStep)
{
updateTimeStepLink();
}
@ -205,8 +212,8 @@ void RimViewController::fieldChangedByUi(const caf::PdmFieldHandle* changedField
}
else if (changedField == &m_managedView)
{
PdmObjectHandle* prevValue = oldValue.value<caf::PdmPointer<PdmObjectHandle> >().rawPtr();
RimGridView* previousManagedView = dynamic_cast<RimGridView*>(prevValue);
PdmObjectHandle* prevValue = oldValue.value<caf::PdmPointer<PdmObjectHandle>>().rawPtr();
RimGridView* previousManagedView = dynamic_cast<RimGridView*>(prevValue);
RimViewController::removeOverrides(previousManagedView);
setManagedView(m_managedView());
@ -220,7 +227,6 @@ void RimViewController::fieldChangedByUi(const caf::PdmFieldHandle* changedField
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -269,7 +275,6 @@ void RimViewController::updateOverrides()
RimEclipseView* masterEclipseView = dynamic_cast<RimEclipseView*>(masterView);
if (masterEclipseView)
{
if (manEclView)
{
if (isPropertyFilterOveridden())
@ -371,7 +376,7 @@ void RimViewController::updateOptionSensitivity()
}
RimEclipseView* eclipseMasterView = dynamic_cast<RimEclipseView*>(mainView);
RimGeoMechView* geoMasterView = dynamic_cast<RimGeoMechView*>(mainView);
RimGeoMechView* geoMasterView = dynamic_cast<RimGeoMechView*>(mainView);
bool isMasterAndDependentViewDifferentType = false;
if (eclipseMasterView && !managedEclipseView())
@ -484,7 +489,6 @@ void RimViewController::defineUiOrdering(QString uiConfigName, caf::PdmUiOrderin
visibleCells->add(&m_syncPropertyFilters);
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -514,11 +518,11 @@ void RimViewController::updateCameraLink()
//--------------------------------------------------------------------------------------------------
void RimViewController::updateTimeStepLink()
{
if (!this->isTimeStepLinked()) return;
if (!this->isTimeStepLinked()) return;
if (m_managedView)
{
RimViewLinker* viewLinker = this->ownerViewLinker();
RimViewLinker* viewLinker = this->ownerViewLinker();
viewLinker->updateTimeStep(viewLinker->masterView(), viewLinker->masterView()->currentTimeStep());
}
@ -582,14 +586,12 @@ const RigCaseToCaseCellMapper* RimViewController::cellMapper()
dependEclGrid = dependEclipseView->mainGrid();
}
if (masterGeomechView && masterGeomechView->geoMechCase()->geoMechData()
&& masterGeomechView->femParts()->partCount())
if (masterGeomechView && masterGeomechView->geoMechCase()->geoMechData() && masterGeomechView->femParts()->partCount())
{
masterFemPart = masterGeomechView->femParts()->part(0);
}
if (dependGeomechView && dependGeomechView->geoMechCase()->geoMechData()
&& dependGeomechView->femParts()->partCount())
if (dependGeomechView && dependGeomechView->geoMechCase()->geoMechData() && dependGeomechView->femParts()->partCount())
{
dependFemPart = dependGeomechView->femParts()->part(0);
}
@ -597,17 +599,16 @@ const RigCaseToCaseCellMapper* RimViewController::cellMapper()
// If we have the correct mapping already, return it.
if (m_caseToCaseCellMapper.notNull())
{
if ( masterEclGrid == m_caseToCaseCellMapper->masterGrid()
&& dependEclGrid == m_caseToCaseCellMapper->dependentGrid()
&& masterFemPart == m_caseToCaseCellMapper->masterFemPart()
&& dependFemPart == m_caseToCaseCellMapper->dependentFemPart())
{
return m_caseToCaseCellMapper.p();
}
else
{
m_caseToCaseCellMapper = nullptr;
}
if (masterEclGrid == m_caseToCaseCellMapper->masterGrid() && dependEclGrid == m_caseToCaseCellMapper->dependentGrid() &&
masterFemPart == m_caseToCaseCellMapper->masterFemPart() &&
dependFemPart == m_caseToCaseCellMapper->dependentFemPart())
{
return m_caseToCaseCellMapper.p();
}
else
{
m_caseToCaseCellMapper = nullptr;
}
}
// Create the mapping if needed
@ -626,7 +627,7 @@ const RigCaseToCaseCellMapper* RimViewController::cellMapper()
{
m_caseToCaseCellMapper = new RigCaseToCaseCellMapper(masterFemPart, dependFemPart);
}
else if (masterFemPart && dependEclGrid)
else if (masterFemPart && dependEclGrid)
{
m_caseToCaseCellMapper = new RigCaseToCaseCellMapper(masterFemPart, dependEclGrid);
}
@ -649,7 +650,7 @@ RimGridView* RimViewController::masterView() const
bool RimViewController::isMasterAndDepViewDifferentType() const
{
RimEclipseView* eclipseMasterView = dynamic_cast<RimEclipseView*>(masterView());
RimGeoMechView* geoMasterView = dynamic_cast<RimGeoMechView*>(masterView());
RimGeoMechView* geoMasterView = dynamic_cast<RimGeoMechView*>(masterView());
bool isMasterAndDependentViewDifferentType = false;
if (eclipseMasterView && !managedEclipseView())
@ -671,11 +672,8 @@ void RimViewController::scheduleCreateDisplayModelAndRedrawForDependentView() co
{
if (!this->isActive()) return;
if (this->isVisibleCellsOveridden()
|| this->isRangeFiltersControlled()
|| this->isPropertyFilterOveridden()
|| this->isResultColorControlled()
)
if (this->isVisibleCellsOveridden() || this->isRangeFiltersControlled() || this->isPropertyFilterOveridden() ||
this->isResultColorControlled())
{
if (this->managedView())
{
@ -683,7 +681,7 @@ void RimViewController::scheduleCreateDisplayModelAndRedrawForDependentView() co
}
}
if (this->isResultColorControlled() && this->managedView() )
if (this->isResultColorControlled() && this->managedView())
{
this->managedView()->crossSectionCollection()->scheduleCreateDisplayModelAndRedraw2dIntersectionViews();
}
@ -696,11 +694,8 @@ void RimViewController::scheduleGeometryRegenForDepViews(RivCellSetEnum geometry
{
if (!this->isActive()) return;
if ( this->isVisibleCellsOveridden()
|| this->isRangeFiltersControlled()
|| this->isPropertyFilterOveridden()
|| this->isResultColorControlled()
)
if (this->isVisibleCellsOveridden() || this->isRangeFiltersControlled() || this->isPropertyFilterOveridden() ||
this->isResultColorControlled())
{
if (this->managedView())
{
@ -765,7 +760,7 @@ bool RimViewController::isTimeStepLinked() const
//--------------------------------------------------------------------------------------------------
bool RimViewController::isResultColorControlled() const
{
if (ownerViewLinker()->isActive() && this->m_isActive())
if (ownerViewLinker()->isActive() && this->m_isActive())
{
return m_syncCellResult;
}
@ -818,7 +813,7 @@ bool RimViewController::isVisibleCellsOveridden() const
bool RimViewController::isRangeFilterControlPossible() const
{
return true;
#if 0
#if 0
if (!isMasterAndDepViewDifferentType()) return true;
// Make sure the cases are in the same domain
@ -843,7 +838,7 @@ bool RimViewController::isRangeFilterControlPossible() const
}
}
return false;
#endif
#endif
}
//--------------------------------------------------------------------------------------------------
@ -855,7 +850,7 @@ bool RimViewController::isRangeFilterMappingApliccable() const
// Make sure the cases are in the same domain
RimEclipseView* eclipseView = dynamic_cast<RimEclipseView*>(masterView());
RimGeoMechView* geomView = dynamic_cast<RimGeoMechView*>(masterView());
RimGeoMechView* geomView = dynamic_cast<RimGeoMechView*>(masterView());
if (!geomView) geomView = managedGeoView();
if (!eclipseView) eclipseView = managedEclipseView();
@ -864,7 +859,7 @@ bool RimViewController::isRangeFilterMappingApliccable() const
if (eclipseView->eclipseCase()->eclipseCaseData() && geomView->geoMechCase() && geomView->geoMechCase()->geoMechData())
{
RigMainGrid* eclGrid = eclipseView->mainGrid();
RigFemPart* femPart = geomView->femParts()->part(0);
RigFemPart* femPart = geomView->femParts()->part(0);
if (eclGrid && femPart)
{
@ -878,7 +873,6 @@ bool RimViewController::isRangeFilterMappingApliccable() const
return false;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -905,7 +899,7 @@ bool RimViewController::isPropertyFilterControlPossible() const
if (geomView)
{
RimGeoMechView* depGeomView = managedGeoView();
RimGeoMechView* depGeomView = managedGeoView();
if (depGeomView && geomView->geoMechCase() == depGeomView->geoMechCase())
{
return true;
@ -926,15 +920,14 @@ bool RimViewController::isPropertyFilterControlPossible() const
return false;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RimViewController::isPropertyFilterOveridden() const
{
if (!isPropertyFilterControlPossible()) return false;
if (!isPropertyFilterControlPossible()) return false;
if (ownerViewLinker()->isActive() && this->m_isActive())
if (ownerViewLinker()->isActive() && this->m_isActive())
{
return m_syncPropertyFilters;
}
@ -964,30 +957,31 @@ void RimViewController::updateRangeFilterOverrides(RimCellRangeFilter* changedRa
// Copy the rangeFilterCollection
RimCellRangeFilterCollection* sourceFilterCollection = masterView()->rangeFilterCollection();
QString xmlRangeFilterCollCopy = sourceFilterCollection->writeObjectToXmlString();
PdmObjectHandle* objectCopy = PdmXmlObjectHandle::readUnknownObjectFromXmlString(xmlRangeFilterCollCopy, caf::PdmDefaultObjectFactory::instance());
QString xmlRangeFilterCollCopy = sourceFilterCollection->writeObjectToXmlString();
PdmObjectHandle* objectCopy =
PdmXmlObjectHandle::readUnknownObjectFromXmlString(xmlRangeFilterCollCopy, caf::PdmDefaultObjectFactory::instance());
RimCellRangeFilterCollection* overrideRangeFilterColl = dynamic_cast<RimCellRangeFilterCollection*>(objectCopy);
// Convert the range filter to fit in the managed view if needed
if (isRangeFilterMappingApliccable())
{
RimEclipseView* eclipseMasterView = dynamic_cast<RimEclipseView*>(masterView());
RimGeoMechView* geoMasterView = dynamic_cast<RimGeoMechView*>(masterView());
RimEclipseView* depEclView = managedEclipseView();
RimGeoMechView* depGeomView = managedGeoView();
RimGeoMechView* geoMasterView = dynamic_cast<RimGeoMechView*>(masterView());
RimEclipseView* depEclView = managedEclipseView();
RimGeoMechView* depGeomView = managedGeoView();
if (eclipseMasterView && depGeomView)
{
if (eclipseMasterView->mainGrid())
{
RigMainGrid* srcEclGrid = eclipseMasterView->mainGrid();
RigFemPart* dstFemPart = depGeomView->femParts()->part(0);
RigFemPart* dstFemPart = depGeomView->femParts()->part(0);
for (size_t rfIdx = 0; rfIdx < sourceFilterCollection->rangeFilters().size(); ++rfIdx)
{
RimCellRangeFilter* srcRFilter = sourceFilterCollection->rangeFilters[rfIdx];
RimCellRangeFilter* dstRFilter = overrideRangeFilterColl->rangeFilters[rfIdx];
RigCaseToCaseRangeFilterMapper::convertRangeFilterEclToFem(srcRFilter, srcEclGrid,
dstRFilter, dstFemPart);
RigCaseToCaseRangeFilterMapper::convertRangeFilterEclToFem(
srcRFilter, srcEclGrid, dstRFilter, dstFemPart);
}
}
}
@ -995,14 +989,14 @@ void RimViewController::updateRangeFilterOverrides(RimCellRangeFilter* changedRa
{
if (depEclView->mainGrid())
{
RigFemPart* srcFemPart = geoMasterView->femParts()->part(0);
RigFemPart* srcFemPart = geoMasterView->femParts()->part(0);
RigMainGrid* dstEclGrid = depEclView->mainGrid();
for (size_t rfIdx = 0; rfIdx < sourceFilterCollection->rangeFilters().size(); ++rfIdx)
{
RimCellRangeFilter* srcRFilter = sourceFilterCollection->rangeFilters[rfIdx];
RimCellRangeFilter* dstRFilter = overrideRangeFilterColl->rangeFilters[rfIdx];
RigCaseToCaseRangeFilterMapper::convertRangeFilterFemToEcl(srcRFilter, srcFemPart,
dstRFilter, dstEclGrid);
RigCaseToCaseRangeFilterMapper::convertRangeFilterFemToEcl(
srcRFilter, srcFemPart, dstRFilter, dstEclGrid);
}
}
}
@ -1062,4 +1056,3 @@ bool RimViewController::askUserToRestoreOriginalRangeFilterCollection(const QStr
return true;
}
}

View File

@ -44,15 +44,15 @@ class RimViewController : public caf::PdmObject
CAF_PDM_HEADER_INIT;
public:
RimViewController(void);
virtual ~RimViewController(void);
RimViewController();
virtual ~RimViewController();
bool isActive() const;
RimGridView* managedView() const;
RimGridView* managedView() const;
void setManagedView(RimGridView* view);
RimGridView* masterView() const;
RimGridView* masterView() const;
RimViewLinker* ownerViewLinker() const;
const RigCaseToCaseCellMapper* cellMapper();
@ -80,13 +80,13 @@ public:
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);
virtual void defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName = "");
virtual void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering);
void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue) override;
QList<caf::PdmOptionItemInfo> calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions, bool * useOptionsOnly) override;
void defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName = "") override;
void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) override;
virtual caf::PdmFieldHandle* userDescriptionField() { return &m_name; }
virtual caf::PdmFieldHandle* objectToggleField() { return &m_isActive; }
caf::PdmFieldHandle* userDescriptionField() override { return &m_name; }
caf::PdmFieldHandle* objectToggleField() override { return &m_isActive; }
private:
void updateCameraLink();
@ -107,7 +107,7 @@ private:
private:
caf::PdmField<QString> m_name;
caf::PdmPtrField<RimGridView*> m_managedView;
caf::PdmPtrField<RimGridView*> m_managedView;
caf::PdmField<bool> m_isActive;
caf::PdmField<bool> m_syncCamera;

View File

@ -23,6 +23,7 @@
#include "RigMainGrid.h"
#include "Rim3dView.h"
#include "RimCase.h"
#include "RimEclipseCellColors.h"
#include "RimEclipseInputCase.h"
@ -34,29 +35,27 @@
#include "RimGeoMechResultDefinition.h"
#include "RimGeoMechView.h"
#include "RimIntersectionCollection.h"
#include "RimRegularLegendConfig.h"
#include "RimProject.h"
#include "RimRegularLegendConfig.h"
#include "RimTernaryLegendConfig.h"
#include "Rim3dView.h"
#include "RimViewController.h"
#include "RimViewLinkerCollection.h"
#include "RimViewManipulator.h"
#include "RiuViewer.h"
#include "cvfCamera.h"
#include "cvfScene.h"
#include "cvfMatrix4.h"
#include "cafPdmUiTreeOrdering.h"
#include "cvfCamera.h"
#include "cvfMatrix4.h"
#include "cvfScene.h"
CAF_PDM_SOURCE_INIT(RimViewLinker, "ViewLinker");
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimViewLinker::RimViewLinker(void)
RimViewLinker::RimViewLinker()
{
// clang-format off
CAF_PDM_InitObject("Linked Views", "", "", "");
CAF_PDM_InitField(&m_name, "Name", QString("View Group Name"), "View Group Name", "", "", "");
@ -69,12 +68,13 @@ RimViewLinker::RimViewLinker(void)
CAF_PDM_InitFieldNoDefault(&m_viewControllers, "ManagedViews", "Managed Views", "", "", "");
m_viewControllers.uiCapability()->setUiHidden(true);
m_viewControllers.uiCapability()->setUiTreeChildrenHidden(true);
// clang-format on
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimViewLinker::~RimViewLinker(void)
RimViewLinker::~RimViewLinker()
{
removeOverrides();
@ -112,9 +112,7 @@ void RimViewLinker::updateTimeStep(RimGridView* sourceView, int timeStep)
if (!viewLink->isTimeStepLinked()) continue;
if ( viewLink->managedView()
&& viewLink->managedView() != sourceView
&& viewLink->managedView()->viewer())
if (viewLink->managedView() && viewLink->managedView() != sourceView && viewLink->managedView()->viewer())
{
viewLink->managedView()->viewer()->setCurrentFrame(timeStep);
}
@ -126,7 +124,7 @@ void RimViewLinker::updateTimeStep(RimGridView* sourceView, int timeStep)
//--------------------------------------------------------------------------------------------------
void RimViewLinker::updateCellResult()
{
Rim3dView* rimView = m_masterView;
Rim3dView* rimView = m_masterView;
RimEclipseView* masterEclipseView = dynamic_cast<RimEclipseView*>(rimView);
if (masterEclipseView && masterEclipseView->cellResult())
{
@ -138,7 +136,7 @@ void RimViewLinker::updateCellResult()
if (viewLink->managedView())
{
Rim3dView* rimView = viewLink->managedView();
Rim3dView* rimView = viewLink->managedView();
RimEclipseView* eclipseView = dynamic_cast<RimEclipseView*>(rimView);
if (eclipseView)
{
@ -149,10 +147,12 @@ void RimViewLinker::updateCellResult()
if (viewLink->isLegendDefinitionsControlled())
{
eclipseView->cellResult()->legendConfig()->setUiValuesFromLegendConfig(masterEclipseView->cellResult()->legendConfig());
eclipseView->cellResult()->legendConfig()->setUiValuesFromLegendConfig(
masterEclipseView->cellResult()->legendConfig());
eclipseView->cellResult()->legendConfig()->updateLegend();
eclipseView->cellResult()->ternaryLegendConfig()->setUiValuesFromLegendConfig(masterEclipseView->cellResult()->ternaryLegendConfig());
eclipseView->cellResult()->ternaryLegendConfig()->setUiValuesFromLegendConfig(
masterEclipseView->cellResult()->ternaryLegendConfig());
}
eclipseView->scheduleCreateDisplayModelAndRedraw();
@ -176,7 +176,7 @@ void RimViewLinker::updateCellResult()
if (viewLink->managedView())
{
Rim3dView* rimView = viewLink->managedView();
Rim3dView* rimView = viewLink->managedView();
RimGeoMechView* geoView = dynamic_cast<RimGeoMechView*>(rimView);
if (geoView)
{
@ -186,7 +186,8 @@ void RimViewLinker::updateCellResult()
if (viewLink->isLegendDefinitionsControlled())
{
geoView->cellResult()->legendConfig()->setUiValuesFromLegendConfig(masterGeoView->cellResult()->legendConfig());
geoView->cellResult()->legendConfig()->setUiValuesFromLegendConfig(
masterGeoView->cellResult()->legendConfig());
geoView->cellResult()->legendConfig()->updateLegend();
}
@ -420,7 +421,6 @@ void RimViewLinker::applyIconEnabledState(caf::PdmObject* obj, const QIcon& icon
obj->setUiIcon(newIcon);
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -452,7 +452,6 @@ void RimViewLinker::scheduleCreateDisplayModelAndRedrawForDependentViews()
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -586,4 +585,3 @@ void RimViewLinker::removeViewController(RimViewController* viewController)
{
m_viewControllers.removeChildObject(viewController);
}

View File

@ -48,13 +48,13 @@ class RimViewLinker : public caf::PdmObject
CAF_PDM_HEADER_INIT;
public:
RimViewLinker(void);
virtual ~RimViewLinker(void);
RimViewLinker();
virtual ~RimViewLinker();
bool isActive() const;
void setMasterView(RimGridView* view);
RimGridView* masterView() const;
RimGridView* masterView() const;
void addDependentView(RimGridView* view);
void updateDependentViews();
@ -85,20 +85,20 @@ public:
void updateCursorPosition(const RimGridView* sourceView, const cvf::Vec3d& domainCoord);
protected:
virtual caf::PdmFieldHandle* userDescriptionField() { return &m_name; }
virtual void initAfterRead();
static QString displayNameForView(RimGridView* view);
caf::PdmFieldHandle* userDescriptionField() override { return &m_name; }
void initAfterRead() override;
private:
static QString displayNameForView(RimGridView* view);
void allViewsForCameraSync(const RimGridView* source, std::vector<RimGridView*>& views) const;
void removeOverrides();
private:
caf::PdmChildArrayField<RimViewController*> m_viewControllers;
caf::PdmPtrField<RimGridView*> m_masterView;
caf::PdmPtrField<RimGridView*> m_masterView;
caf::PdmField<QString> m_name;
QIcon m_originalIcon;
};