(#417) Added togglebutton control to Linked View Group

This commit is contained in:
Magne Sjaastad
2015-09-07 14:54:54 +02:00
parent f26fa65d98
commit 3ca5406bb4
2 changed files with 26 additions and 0 deletions

View File

@@ -49,6 +49,9 @@ RimViewLinker::RimViewLinker(void)
{ {
CAF_PDM_InitObject("Linked Views", ":/Reservoir1View.png", "", ""); CAF_PDM_InitObject("Linked Views", ":/Reservoir1View.png", "", "");
CAF_PDM_InitField(&m_isActive, "Active", true, "Active", "", "", "");
m_isActive.uiCapability()->setUiHidden(true);
CAF_PDM_InitField(&m_name, "Name", QString("View Group Name"), "View Group Name", "", "", ""); CAF_PDM_InitField(&m_name, "Name", QString("View Group Name"), "View Group Name", "", "", "");
m_name.uiCapability()->setUiHidden(true); m_name.uiCapability()->setUiHidden(true);
@@ -72,6 +75,8 @@ RimViewLinker::~RimViewLinker(void)
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RimViewLinker::updateTimeStep(RimView* sourceView, int timeStep) void RimViewLinker::updateTimeStep(RimView* sourceView, int timeStep)
{ {
if (!isActive()) return;
RimLinkedView* sourceLinkedView = linkedViewFromView(sourceView); RimLinkedView* sourceLinkedView = linkedViewFromView(sourceView);
if (sourceLinkedView && !sourceLinkedView->syncTimeStep()) if (sourceLinkedView && !sourceLinkedView->syncTimeStep())
{ {
@@ -103,6 +108,8 @@ void RimViewLinker::updateTimeStep(RimView* sourceView, int timeStep)
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RimViewLinker::updateCellResult() void RimViewLinker::updateCellResult()
{ {
if (!isActive()) return;
RimView* rimView = m_mainView; RimView* rimView = m_mainView;
RimEclipseView* masterEclipseView = dynamic_cast<RimEclipseView*>(rimView); RimEclipseView* masterEclipseView = dynamic_cast<RimEclipseView*>(rimView);
if (masterEclipseView && masterEclipseView->cellResult()) if (masterEclipseView && masterEclipseView->cellResult())
@@ -159,6 +166,8 @@ void RimViewLinker::updateCellResult()
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RimViewLinker::updateRangeFilters() void RimViewLinker::updateRangeFilters()
{ {
if (!isActive()) return;
for (size_t i = 0; i < linkedViews.size(); i++) for (size_t i = 0; i < linkedViews.size(); i++)
{ {
RimLinkedView* managedViewConfig = linkedViews[i]; RimLinkedView* managedViewConfig = linkedViews[i];
@@ -194,6 +203,8 @@ void RimViewLinker::updateRangeFilters()
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RimViewLinker::updatePropertyFilters() void RimViewLinker::updatePropertyFilters()
{ {
if (!isActive()) return;
for (size_t i = 0; i < linkedViews.size(); i++) for (size_t i = 0; i < linkedViews.size(); i++)
{ {
RimLinkedView* managedViewConfig = linkedViews[i]; RimLinkedView* managedViewConfig = linkedViews[i];
@@ -239,6 +250,8 @@ void RimViewLinker::configureOverrides()
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RimViewLinker::allViewsForCameraSync(RimView* source, std::vector<RimView*>& views) void RimViewLinker::allViewsForCameraSync(RimView* source, std::vector<RimView*>& views)
{ {
if (!isActive()) return;
if (source != m_mainView()) if (source != m_mainView())
{ {
views.push_back(m_mainView()); views.push_back(m_mainView());
@@ -383,3 +396,11 @@ void RimViewLinker::updateScaleZ(RimView* source, double scaleZ)
} }
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RimViewLinker::isActive()
{
return m_isActive;
}

View File

@@ -67,10 +67,15 @@ public:
protected: protected:
virtual caf::PdmFieldHandle* userDescriptionField() { return &m_name; } virtual caf::PdmFieldHandle* userDescriptionField() { return &m_name; }
virtual caf::PdmFieldHandle* objectToggleField() { return &m_active; }
virtual void defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName = ""); virtual void defineUiTreeOrdering(caf::PdmUiTreeOrdering& uiTreeOrdering, QString uiConfigName = "");
virtual void initAfterRead(); virtual void initAfterRead();
private: private:
bool isActive();
private:
caf::PdmField<bool> m_active;
caf::PdmPtrField<RimView*> m_mainView; caf::PdmPtrField<RimView*> m_mainView;
caf::PdmField<QString> m_name; caf::PdmField<QString> m_name;
}; };