17 #include <QMessageBox> 28 if (selectedNodes.empty())
33 QString question(
"Do you really want to remove ");
34 for (
auto& dataNode : selectedNodes)
36 if (
nullptr == dataNode)
41 question.append(QString::fromStdString(dataNode->GetName()));
42 question.append(
", ");
46 question = question.remove(question.size() - 2, 2);
47 question.append(
" from data storage?");
49 QMessageBox::StandardButton answerButton =
50 QMessageBox::question(parent,
"DataManager", question, QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
52 if (answerButton == QMessageBox::Yes)
54 for (
auto& dataNode : selectedNodes)
56 if (
nullptr == dataNode)
61 dataStorage->Remove(dataNode);
68 bool globalReinit = preferencesNode->GetBool(
"Call global reinit if node is deleted",
true);
81 setText(tr(
"Remove"));
90 setText(tr(
"Remove"));
97 connect(
this, &QmitkDataNodeRemoveAction::triggered,
this, &QmitkDataNodeRemoveAction::OnActionTriggered);
100 void QmitkDataNodeRemoveAction::OnActionTriggered(
bool )
static const QString ACTION_ID
itk::SmartPointer< T > Lock() const
QList< mitk::DataNode::Pointer > GetSelectedNodes() const
void Run(berry::IWorkbenchPartSite::Pointer workbenchPartSite, mitk::DataStorage::Pointer dataStorage, const QList< mitk::DataNode::Pointer > &selectedNodes, QWidget *parent)
virtual SmartPointer< IPreferences > GetSystemPreferences()=0
void InitializeAction() override
SmartPointer< ObjectType > Lock() const
bool IsExpired() const noexcept
mitk::WeakPointer< mitk::DataStorage > m_DataStorage
berry::IWorkbenchPartSite::WeakPtr m_WorkbenchPartSite
void Run(berry::IWorkbenchPartSite::Pointer workbenchPartSite, mitk::DataStorage::Pointer dataStorage)
QmitkDataNodeRemoveAction(QWidget *parent, berry::IWorkbenchPartSite::Pointer workbenchPartSite)