15 #include "internal/QmitkDataNodeSelection.h" 25 : m_SelectionService(nullptr)
26 , m_SelectionProvider(nullptr)
28 m_DataNodeItemModel = std::make_shared<QmitkDataNodeItemModel>();
29 m_DataNodeSelectionModel = std::make_shared<QItemSelectionModel>(m_DataNodeItemModel.get());
40 if (
nullptr == selectionService)
45 m_SelectionService = selectionService;
52 if (
nullptr == m_SelectionService)
58 m_SelectionService =
nullptr;
63 m_SelectionProvider = selectionProvider;
68 m_SelectionProvider =
nullptr;
73 if (
nullptr == m_SelectionProvider)
82 m_DataNodeSelectionModel->clearSelection();
83 m_DataNodeItemModel->clear();
87 m_DataNodeItemModel->clear();
89 for (
const auto& node : nodes)
91 m_DataNodeItemModel->AddDataNode(node);
94 m_DataNodeSelectionModel->select(QItemSelection(m_DataNodeItemModel->index(0, 0), m_DataNodeItemModel->index(nodes.size() - 1, 0)), QItemSelectionModel::ClearAndSelect);
105 QList<mitk::DataNode::Pointer> nodes;
114 if (dataNodeSelection.
IsNull())
117 nodes = QList<mitk::DataNode::Pointer>();
121 nodes = QList<mitk::DataNode::Pointer>::fromStdList(dataNodeSelection->GetSelectedDataNodes());
A BlueBerry selection provider for mitk::DataNode selections.
virtual void RemovePostSelectionListener(ISelectionListener *listener)=0
void ServiceNullSelection(const berry::IWorkbenchPart::Pointer &sourcePart)
void RemovePostSelectionListener()
SmartPointer< Other > Cast() const
void SetItemSelectionModel(QItemSelectionModel *combo)
void ChangeServiceSelection(QList< mitk::DataNode::Pointer > nodes)
~QmitkSelectionServiceConnector() override
virtual void AddPostSelectionListener(ISelectionListener *listener)=0
QmitkSelectionServiceConnector()
void AddPostSelectionListener(berry::ISelectionService *selectionService)
void SetAsSelectionProvider(QmitkDataNodeSelectionProvider *selectionProvider)
void RemoveAsSelectionProvider()
void ServiceSelectionChanged(QList< mitk::DataNode::Pointer > nodes)