diff --git a/Plugins/org.mitk.gui.qt.application/src/QmitkDataNodeShowSelectedNodesAction.cpp b/Plugins/org.mitk.gui.qt.application/src/QmitkDataNodeShowSelectedNodesAction.cpp index e8bae26d27..d52cd2a2c9 100644 --- a/Plugins/org.mitk.gui.qt.application/src/QmitkDataNodeShowSelectedNodesAction.cpp +++ b/Plugins/org.mitk.gui.qt.application/src/QmitkDataNodeShowSelectedNodesAction.cpp @@ -1,79 +1,81 @@ /*=================================================================== The Medical Imaging Interaction Toolkit (MITK) Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See LICENSE.txt or http://www.mitk.org for details. ===================================================================*/ #include // mitk core #include QmitkDataNodeShowSelectedNodesAction::QmitkDataNodeShowSelectedNodesAction(QWidget* parent, berry::IWorkbenchPartSite::Pointer workbenchpartSite) : QAction(parent) , QmitkAbstractDataNodeAction(workbenchpartSite) { setText(tr("Show only selected nodes")); InitializeAction(); } QmitkDataNodeShowSelectedNodesAction::QmitkDataNodeShowSelectedNodesAction(QWidget* parent, berry::IWorkbenchPartSite* workbenchpartSite) : QAction(parent) , QmitkAbstractDataNodeAction(berry::IWorkbenchPartSite::Pointer(workbenchpartSite)) { setText(tr("Show only selected nodes")); InitializeAction(); } void QmitkDataNodeShowSelectedNodesAction::InitializeAction() { connect(this, &QmitkDataNodeShowSelectedNodesAction::triggered, this, &QmitkDataNodeShowSelectedNodesAction::OnActionTriggered); } void QmitkDataNodeShowSelectedNodesAction::OnActionTriggered(bool /*checked*/) { if (m_DataStorage.IsExpired()) { return; } + auto dataStorage = m_DataStorage.Lock(); + mitk::BaseRenderer::Pointer baseRenderer = GetBaseRenderer(); auto dataNodes = GetSelectedNodes(); - auto nodeset = m_DataStorage.Lock()->GetAll(); + auto nodeset = dataStorage->GetAll(); for (auto& node : *nodeset) { if (node.IsNotNull()) { node->SetVisibility(dataNodes.contains(node), baseRenderer); if(node->GetData() == nullptr) { node->SetVisibility(true, baseRenderer); - mitk::DataStorage::SetOfObjects::ConstPointer derivations = m_DataStorage.Lock()->GetDerivations(node); + mitk::DataStorage::SetOfObjects::ConstPointer derivations = dataStorage->GetDerivations(node); for (mitk::DataStorage::SetOfObjects::const_iterator iter = derivations->begin(); iter != derivations->end(); ++iter) { (*iter)->SetVisibility(true, baseRenderer); } } } } if (nullptr == baseRenderer) { mitk::RenderingManager::GetInstance()->RequestUpdateAll(); } else { mitk::RenderingManager::GetInstance()->RequestUpdate(baseRenderer->GetRenderWindow()); } } diff --git a/Plugins/org.mitk.gui.qt.application/src/QmitkDataNodeShowSelectedNodesAction2.cpp b/Plugins/org.mitk.gui.qt.application/src/QmitkDataNodeShowSelectedNodesAction2.cpp deleted file mode 100644 index f07f011542..0000000000 --- a/Plugins/org.mitk.gui.qt.application/src/QmitkDataNodeShowSelectedNodesAction2.cpp +++ /dev/null @@ -1,76 +0,0 @@ -/*=================================================================== - -The Medical Imaging Interaction Toolkit (MITK) - -Copyright (c) German Cancer Research Center, -Division of Medical and Biological Informatics. -All rights reserved. - -This software is distributed WITHOUT ANY WARRANTY; without -even the implied warranty of MERCHANTABILITY or FITNESS FOR -A PARTICULAR PURPOSE. - -See LICENSE.txt or http://www.mitk.org for details. - -===================================================================*/ - -#include - -// mitk core -#include - -QmitkDataNodeShowSelectedNodesAction::QmitkDataNodeShowSelectedNodesAction(QWidget* parent, berry::IWorkbenchPartSite::Pointer workbenchpartSite) - : QAction(parent) - , QmitkAbstractDataNodeAction(workbenchpartSite) -{ - setText(tr("Show only selected nodes")); - InitializeAction(); -} - -QmitkDataNodeShowSelectedNodesAction::QmitkDataNodeShowSelectedNodesAction(QWidget* parent, berry::IWorkbenchPartSite* workbenchpartSite) - : QAction(parent) - , QmitkAbstractDataNodeAction(berry::IWorkbenchPartSite::Pointer(workbenchpartSite)) -{ - setText(tr("Show only selected nodes")); - InitializeAction(); -} - -QmitkDataNodeShowSelectedNodesAction::~QmitkDataNodeShowSelectedNodesAction() -{ - // nothing here -} - -void QmitkDataNodeShowSelectedNodesAction::InitializeAction() -{ - connect(this, &QmitkDataNodeShowSelectedNodesAction::triggered, this, &QmitkDataNodeShowSelectedNodesAction::OnActionTriggered); -} - -void QmitkDataNodeShowSelectedNodesAction::OnActionTriggered(bool /*checked*/) -{ - if (m_DataStorage.IsExpired()) - { - return; - } - - auto dataStorage = m_DataStorage.Lock(); - - auto selectedNodes = GetSelectedNodes(); - auto nodeset = dataStorage->GetAll(); - for (auto& node : *nodeset) - { - if (node.IsNotNull()) - { - node->SetVisibility(selectedNodes.contains(node)); - if(node->GetData() == nullptr) - { - node->SetVisibility(true); - mitk::DataStorage::SetOfObjects::ConstPointer derivations = dataStorage->GetDerivations(node); - for (mitk::DataStorage::SetOfObjects::const_iterator iter = derivations->begin(); iter != derivations->end(); ++iter) - { - (*iter)->SetVisibility(true); - } - } - } - } - mitk::RenderingManager::GetInstance()->RequestUpdateAll(); -}