25 if (context ==
nullptr)
27 MITK_ERROR <<
"BindDispatcherInteractor() - Context could not be obtained.";
39 if (dataStorage != m_DataStorage)
42 UnRegisterDataStorageEvents();
43 m_DataStorage = dataStorage;
44 RegisterDataStorageEvents();
50 if (m_DataStorage.IsNotNull())
52 UnRegisterDataStorageEvents();
56 void mitk::BindDispatcherInteractor::RegisterInteractor(
const mitk::DataNode *dataNode)
58 if (m_Dispatcher.IsNotNull())
60 m_Dispatcher->AddDataInteractor(dataNode);
64 void mitk::BindDispatcherInteractor::RegisterDataStorageEvents()
66 if (m_DataStorage.IsNotNull())
69 this, &BindDispatcherInteractor::RegisterInteractor));
72 this, &BindDispatcherInteractor::UnRegisterInteractor));
75 this, &BindDispatcherInteractor::RegisterInteractor));
79 void mitk::BindDispatcherInteractor::UnRegisterInteractor(
const DataNode *dataNode)
81 if (m_Dispatcher.IsNotNull())
83 m_Dispatcher->RemoveDataInteractor(dataNode);
94 m_Dispatcher = dispatcher;
97 void mitk::BindDispatcherInteractor::UnRegisterDataStorageEvents()
99 if (m_DataStorage.IsNotNull())
102 this, &BindDispatcherInteractor::RegisterInteractor));
104 this, &BindDispatcherInteractor::UnRegisterInteractor));
105 m_DataStorage->InteractorChangedNodeEvent.RemoveListener(
107 &BindDispatcherInteractor::RegisterInteractor));
static Module * GetModule(long id)
void SetDataStorage(DataStorage::Pointer dataStorage)
mitk::DataStorage::Pointer m_DataStorage
Dispatcher::Pointer GetDispatcher() const
~BindDispatcherInteractor()
BindDispatcherInteractor(const std::string &)
ModuleContext * GetModuleContext() const
Class for nodes of the DataTree.
static Pointer New(const std::string &_arg)
void SetDispatcher(Dispatcher::Pointer dispatcher)