Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
qSlicerSubjectHierarchyTablesPlugin.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Program: 3D Slicer
4
5 Portions (c) Copyright 2015 Brigham and Women's Hospital (BWH) All Rights Reserved.
6
7 See COPYRIGHT.txt
8 or http://www.slicer.org/copyright/copyright.txt for details.
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15
16 This file was originally developed by Andras Lasso (PerkLab, Queen's
17 University) and Kevin Wang (Princess Margaret Hospital, Toronto) and was
18 supported through OCAIRO and the Applied Cancer Research Unit program of
19 Cancer Care Ontario.
20
21==============================================================================*/
22
23#ifndef __qSlicerSubjectHierarchyTablesPlugin_h
24#define __qSlicerSubjectHierarchyTablesPlugin_h
25
26// SubjectHierarchy includes
28
29#include "qSlicerTablesSubjectHierarchyPluginsExport.h"
30
31class qSlicerSubjectHierarchyTablesPluginPrivate;
32class vtkMRMLNode;
35
36class Q_SLICER_TABLES_SUBJECT_HIERARCHY_PLUGINS_EXPORT qSlicerSubjectHierarchyTablesPlugin : public qSlicerSubjectHierarchyAbstractPlugin
37{
38public:
39 Q_OBJECT
40
41public:
43 qSlicerSubjectHierarchyTablesPlugin(QObject* parent = nullptr);
45
46public:
55 vtkMRMLNode* node,
56 vtkIdType parentItemID=vtkMRMLSubjectHierarchyNode::INVALID_ITEM_ID )const override;
57
64 double canOwnSubjectHierarchyItem(vtkIdType itemID)const override;
65
68 Q_INVOKABLE const QString roleForPlugin()const override;
69
72 QIcon icon(vtkIdType itemID) override;
73
75 QIcon visibilityIcon(int visible) override;
76
78 void setDisplayVisibility(vtkIdType itemID, int visible) override;
79
82 int getDisplayVisibility(vtkIdType itemID)const override;
83
84protected:
87
88protected:
89 QScopedPointer<qSlicerSubjectHierarchyTablesPluginPrivate> d_ptr;
90
91private:
92 Q_DECLARE_PRIVATE(qSlicerSubjectHierarchyTablesPlugin);
94};
95
96#endif
qSlicerSubjectHierarchyAbstractPlugin(QObject *parent=nullptr)
QIcon icon(vtkIdType itemID) override
qSlicerSubjectHierarchyTablesPlugin(QObject *parent=nullptr)
QIcon visibilityIcon(int visible) override
Get visibility icon for a visibility state.
void setDisplayVisibility(vtkIdType itemID, int visible) override
Set display visibility of a owned subject hierarchy item.
double canOwnSubjectHierarchyItem(vtkIdType itemID) const override
double canAddNodeToSubjectHierarchy(vtkMRMLNode *node, vtkIdType parentItemID=vtkMRMLSubjectHierarchyNode::INVALID_ITEM_ID) const override
QScopedPointer< qSlicerSubjectHierarchyTablesPluginPrivate > d_ptr
Q_INVOKABLE const QString roleForPlugin() const override
int getDisplayVisibility(vtkIdType itemID) const override
vtkMRMLTableViewNode * getTableViewNode() const
Return the table view node object from the layout.
qSlicerSubjectHierarchyAbstractPlugin Superclass
Abstract Superclass for all specific types of MRML nodes.
MRML node to represent a complete subject hierarchy tree.
MRML node to represent table view parameters.