23 #ifndef __qSlicerSubjectHierarchyPluginHandler_h 24 #define __qSlicerSubjectHierarchyPluginHandler_h 27 #include "qSlicerSubjectHierarchyModuleWidgetsExport.h" 34 #include <vtkSmartPointer.h> 35 #include <vtkWeakPointer.h> 43 class vtkCallbackCommand;
47 class qSlicerSubjectHierarchyPluginHandlerCleanup;
62 Q_PROPERTY (
bool autoDeleteSubjectHierarchyChildren READ autoDeleteSubjectHierarchyChildren WRITE setAutoDeleteSubjectHierarchyChildren)
66 Q_PROPERTY (
bool displayPatientIDInSubjectHierarchyItemName READ displayPatientIDInSubjectHierarchyItemName WRITE setDisplayPatientIDInSubjectHierarchyItemName)
70 Q_PROPERTY (
bool displayPatientBirthDateInSubjectHierarchyItemName READ displayPatientBirthDateInSubjectHierarchyItemName WRITE setDisplayPatientBirthDateInSubjectHierarchyItemName)
74 Q_PROPERTY (
bool displayStudyIDInSubjectHierarchyItemName READ displayStudyIDInSubjectHierarchyItemName WRITE setDisplayStudyIDInSubjectHierarchyItemName)
78 Q_PROPERTY (
bool displayStudyDateInSubjectHierarchyItemName READ displayStudyDateInSubjectHierarchyItemName WRITE setDisplayStudyDateInSubjectHierarchyItemName)
105 Q_INVOKABLE
void setCurrentItem(vtkIdType itemID);
113 Q_INVOKABLE vtkIdType currentItem();
118 Q_INVOKABLE
void setCurrentItems(
QList<vtkIdType> items);
123 Q_INVOKABLE
QList<vtkIdType> currentItems();
125 Q_INVOKABLE
bool autoDeleteSubjectHierarchyChildren()const;
126 Q_INVOKABLE
void setAutoDeleteSubjectHierarchyChildren(
bool flag);
127 Q_INVOKABLE
bool displayPatientIDInSubjectHierarchyItemName()const;
128 Q_INVOKABLE
void setDisplayPatientIDInSubjectHierarchyItemName(
bool on);
129 Q_INVOKABLE
bool displayPatientBirthDateInSubjectHierarchyItemName()const;
130 Q_INVOKABLE
void setDisplayPatientBirthDateInSubjectHierarchyItemName(
bool on);
131 Q_INVOKABLE
bool displayStudyIDInSubjectHierarchyItemName()const;
132 Q_INVOKABLE
void setDisplayStudyIDInSubjectHierarchyItemName(
bool on);
133 Q_INVOKABLE
bool displayStudyDateInSubjectHierarchyItemName()const;
134 Q_INVOKABLE
void setDisplayStudyDateInSubjectHierarchyItemName(
bool on);
170 vtkIdType itemID, vtkIdType parentItemID );
197 static void onSubjectHierarchyNodeEvent(vtkObject* caller,
unsigned long event,
void* clientData,
void* callData);
232 friend class qSlicerSubjectHierarchyPluginHandlerCleanup;
vtkWeakPointer< vtkMRMLSubjectHierarchyNode > m_SubjectHierarchyNode
Subject hierarchy node.
QList< qSlicerSubjectHierarchyAbstractPlugin * > m_RegisteredPlugins
List of registered plugin instances.
static const vtkIdType INVALID_ITEM_ID
QList< vtkIdType > m_CurrentItems
vtkSmartPointer< vtkCallbackCommand > m_CallBack
Callback handling deletion of the subject hierarchy node.
vtkWeakPointer< vtkMRMLScene > m_MRMLScene
MRML scene (to get new subject hierarchy node if the stored one is deleted)
Default Subject Hierarchy plugin to exercise features of the abstract plugin. This plugin must not be...
qSlicerSubjectHierarchyDefaultPlugin * m_DefaultPlugin
Abstract plugin for handling Subject Hierarchy items.
MRML node to represent a complete subject hierarchy tree.
A set of MRML Nodes that supports serialization and undo/redo.
qSlicerSubjectHierarchyPluginLogic * m_PluginLogic
Plugin logic.
Qt-based logic class to exercise Qt-related logic functions. The Subject hierarchy plugin mechanism a...
Abstract Superclass for all specific types of MRML nodes.
Singleton class managing Subject Hierarchy plugins.