Medical Imaging Interaction Toolkit  2018.4.99-389bf124
Medical Imaging Interaction Toolkit
QmitkNodeDescriptorManager Class Reference

QmitkNodeDescriptorManager manages a set of QmitkNodeDescriptors. More...

#include <QmitkNodeDescriptorManager.h>

Inheritance diagram for QmitkNodeDescriptorManager:
Collaboration diagram for QmitkNodeDescriptorManager:

Public Member Functions

virtual void Initialize ()
 
void AddDescriptor (QmitkNodeDescriptor *descriptor)
 
void RemoveDescriptor (QmitkNodeDescriptor *descriptor)
 
QmitkNodeDescriptorGetDescriptor (const mitk::DataNode *node) const
 
QmitkNodeDescriptorGetDescriptor (const QString &className) const
 
QmitkNodeDescriptorGetUnknownDataNodeDescriptor () const
 
QList< QAction * > GetActions (const mitk::DataNode *node) const
 
QList< QAction * > GetActions (const QList< mitk::DataNode::Pointer > &nodes) const
 
 ~QmitkNodeDescriptorManager () override
 

Static Public Member Functions

static QmitkNodeDescriptorManagerGetInstance ()
 

Protected Member Functions

 QmitkNodeDescriptorManager ()
 

Protected Attributes

QmitkNodeDescriptorm_UnknownDataNodeDescriptor
 
QList< QmitkNodeDescriptor * > m_NodeDescriptors
 

Detailed Description

QmitkNodeDescriptorManager manages a set of QmitkNodeDescriptors.

See also
QmitkNodeDescriptor

Definition at line 26 of file QmitkNodeDescriptorManager.h.

Constructor & Destructor Documentation

◆ ~QmitkNodeDescriptorManager()

QmitkNodeDescriptorManager::~QmitkNodeDescriptorManager ( )
override

Deletes all Descriptors in the list

Definition at line 162 of file QmitkNodeDescriptorManager.cpp.

◆ QmitkNodeDescriptorManager()

QmitkNodeDescriptorManager::QmitkNodeDescriptorManager ( )
protected

Creates the m_UnknownDataNodeDescriptor Calls Initialize

Definition at line 156 of file QmitkNodeDescriptorManager.cpp.

References Initialize().

Member Function Documentation

◆ AddDescriptor()

void QmitkNodeDescriptorManager::AddDescriptor ( QmitkNodeDescriptor descriptor)

Adds a new descriptor to the manager. The manager takes the ownership.

Definition at line 56 of file QmitkNodeDescriptorManager.cpp.

References m_NodeDescriptors.

Referenced by Initialize().

◆ GetActions() [1/2]

QList< QAction * > QmitkNodeDescriptorManager::GetActions ( const mitk::DataNode node) const

Returns a list of all actions that are associated with the given node. If there are more than one Descriptors for this node all actions will be merged together. E.g. all actions from the "unknown" DataNodes will be added to this list. Generic Actions like Save, Load, etc. are stored there.

Definition at line 107 of file QmitkNodeDescriptorManager.cpp.

References QmitkNodeDescriptor::GetActions(), QmitkNodeDescriptor::GetBatchActions(), QmitkNodeDescriptor::GetSeparator(), m_NodeDescriptors, and m_UnknownDataNodeDescriptor.

◆ GetActions() [2/2]

QList< QAction * > QmitkNodeDescriptorManager::GetActions ( const QList< mitk::DataNode::Pointer > &  nodes) const
Returns
a list of actions associated with the given nodes

Definition at line 127 of file QmitkNodeDescriptorManager.cpp.

References QmitkNodeDescriptor::GetBatchActions(), QmitkNodeDescriptor::GetSeparator(), m_NodeDescriptors, and m_UnknownDataNodeDescriptor.

◆ GetDescriptor() [1/2]

QmitkNodeDescriptor * QmitkNodeDescriptorManager::GetDescriptor ( const mitk::DataNode node) const

Get the last descriptor in the descriptors list that matches the given node. Attention: More specialized Descriptors should therefore be appended at the end of the list, e.g. first add "Image", then add "Image Mask"

Returns
a QmitkNodeDescriptor for the given node or a QmitkNodeDescriptor describing unknown nodes (never 0)
See also
AddDescriptor()

Definition at line 74 of file QmitkNodeDescriptorManager.cpp.

References m_NodeDescriptors, and m_UnknownDataNodeDescriptor.

Referenced by QmitkDataStorageDefaultListModel::data(), QmitkRenderWindowDataStorageListModel::data(), QmitkRenderWindowDataStorageTreeModel::data(), QmitkDataStorageSimpleTreeModel::data(), QmitkDataStorageTreeModel::data(), QmitkDataStorageTableModel::data(), and QmitkDataNodeContextMenu::SetSelectedNodes().

◆ GetDescriptor() [2/2]

QmitkNodeDescriptor * QmitkNodeDescriptorManager::GetDescriptor ( const QString &  className) const

Get the last QmitkNodeDescriptor for the given class name

Returns
a QmitkNodeDescriptor for the given class name or 0 if there is no QmitkNodeDescriptor for _ClassName

Definition at line 87 of file QmitkNodeDescriptorManager.cpp.

References m_NodeDescriptors, and m_UnknownDataNodeDescriptor.

◆ GetInstance()

◆ GetUnknownDataNodeDescriptor()

QmitkNodeDescriptor * QmitkNodeDescriptorManager::GetUnknownDataNodeDescriptor ( ) const
Returns
The UnknownDataNodeDescriptor, which is the default Descriptor for all Nodes.

Definition at line 168 of file QmitkNodeDescriptorManager.cpp.

References m_UnknownDataNodeDescriptor.

◆ Initialize()

void QmitkNodeDescriptorManager::Initialize ( )
virtual

Initializes the QmitkNodeDescriptorManager. Adds a few standard Descriptors. This Descriptors are added:

Definition at line 30 of file QmitkNodeDescriptorManager.cpp.

References AddDescriptor(), mitk::BoolProperty::New(), mitk::NodePredicateNot::New(), mitk::NodePredicateAnd::New(), mitk::NodePredicateDataType::New(), and mitk::NodePredicateProperty::New().

Referenced by QmitkNodeDescriptorManager().

◆ RemoveDescriptor()

void QmitkNodeDescriptorManager::RemoveDescriptor ( QmitkNodeDescriptor descriptor)

Removes and deletes a descriptor from the manager

Definition at line 62 of file QmitkNodeDescriptorManager.cpp.

References m_NodeDescriptors.

Member Data Documentation

◆ m_NodeDescriptors

QList<QmitkNodeDescriptor*> QmitkNodeDescriptorManager::m_NodeDescriptors
protected

Holds all user defined descriptors

Definition at line 111 of file QmitkNodeDescriptorManager.h.

Referenced by AddDescriptor(), GetActions(), GetDescriptor(), and RemoveDescriptor().

◆ m_UnknownDataNodeDescriptor

QmitkNodeDescriptor* QmitkNodeDescriptorManager::m_UnknownDataNodeDescriptor
protected

This is the standard QmitkNodeDescriptor matching every node

Definition at line 107 of file QmitkNodeDescriptorManager.h.

Referenced by GetActions(), GetDescriptor(), and GetUnknownDataNodeDescriptor().


The documentation for this class was generated from the following files: