Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
qSlicerSubjectHierarchyModelsPlugin.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Program: 3D Slicer
4
5 Copyright (c) Laboratory for Percutaneous Surgery (PerkLab)
6 Queen's University, Kingston, ON, Canada. All Rights Reserved.
7
8 See COPYRIGHT.txt
9 or http://www.slicer.org/copyright/copyright.txt for details.
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16
17 This file was originally developed by Csaba Pinter, PerkLab, Queen's University
18 and was supported through the Applied Cancer Research Unit program of Cancer Care
19 Ontario with funds provided by the Ontario Ministry of Health and Long-Term Care
20
21==============================================================================*/
22
23#ifndef __qSlicerSubjectHierarchyModelsPlugin_h
24#define __qSlicerSubjectHierarchyModelsPlugin_h
25
26// SubjectHierarchy includes
28
29#include "qSlicerModelsSubjectHierarchyPluginsExport.h"
30
31class qSlicerSubjectHierarchyModelsPluginPrivate;
32
33class Q_SLICER_MODELS_SUBJECT_HIERARCHY_PLUGINS_EXPORT qSlicerSubjectHierarchyModelsPlugin : public qSlicerSubjectHierarchyAbstractPlugin
34{
35public:
36 Q_OBJECT
37
38public:
40 qSlicerSubjectHierarchyModelsPlugin(QObject* parent = nullptr);
42
43public:
51 double canAddNodeToSubjectHierarchy(vtkMRMLNode* node, vtkIdType parentItemID = vtkMRMLSubjectHierarchyNode::INVALID_ITEM_ID) const override;
52
59 double canOwnSubjectHierarchyItem(vtkIdType itemID) const override;
60
63 Q_INVOKABLE const QString roleForPlugin() const override;
64
67 QIcon icon(vtkIdType itemID) override;
68
70 QIcon visibilityIcon(int visible) override;
71
73 QString tooltip(vtkIdType itemID) const override;
74
83 void setDisplayColor(vtkIdType itemID, QColor color, QMap<int, QVariant> terminologyMetaData) override;
84
92 QColor getDisplayColor(vtkIdType itemID, QMap<int, QVariant>& terminologyMetaData) const override;
93
94protected:
95 QScopedPointer<qSlicerSubjectHierarchyModelsPluginPrivate> d_ptr;
96
97private:
98 Q_DECLARE_PRIVATE(qSlicerSubjectHierarchyModelsPlugin);
100};
101
102#endif
qSlicerSubjectHierarchyAbstractPlugin(QObject *parent=nullptr)
qSlicerSubjectHierarchyAbstractPlugin Superclass
QColor getDisplayColor(vtkIdType itemID, QMap< int, QVariant > &terminologyMetaData) const override
double canAddNodeToSubjectHierarchy(vtkMRMLNode *node, vtkIdType parentItemID=vtkMRMLSubjectHierarchyNode::INVALID_ITEM_ID) const override
QIcon icon(vtkIdType itemID) override
qSlicerSubjectHierarchyModelsPlugin(QObject *parent=nullptr)
QString tooltip(vtkIdType itemID) const override
Generate tooltip for a owned subject hierarchy item.
Q_INVOKABLE const QString roleForPlugin() const override
void setDisplayColor(vtkIdType itemID, QColor color, QMap< int, QVariant > terminologyMetaData) override
double canOwnSubjectHierarchyItem(vtkIdType itemID) const override
QScopedPointer< qSlicerSubjectHierarchyModelsPluginPrivate > d_ptr
QIcon visibilityIcon(int visible) override
Get visibility icon for a visibility state.
Abstract Superclass for all specific types of MRML nodes.