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
qSlicerSubjectHierarchyLabelMapsPlugin.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 __qSlicerSubjectHierarchyLabelMapsPlugin_h
24#define __qSlicerSubjectHierarchyLabelMapsPlugin_h
25
26// SubjectHierarchy includes
28
29#include "qSlicerVolumesSubjectHierarchyPluginsExport.h"
30
31class qSlicerSubjectHierarchyLabelMapsPluginPrivate;
33
34class Q_SLICER_VOLUMES_SUBJECT_HIERARCHY_PLUGINS_EXPORT qSlicerSubjectHierarchyLabelMapsPlugin : public qSlicerSubjectHierarchyAbstractPlugin
35{
36public:
37 Q_OBJECT
38
39public:
41 qSlicerSubjectHierarchyLabelMapsPlugin(QObject* parent = nullptr);
43
44public:
53 vtkMRMLNode* node,
54 vtkIdType parentItemID=vtkMRMLSubjectHierarchyNode::INVALID_ITEM_ID )const override;
55
62 double canOwnSubjectHierarchyItem(vtkIdType itemID)const override;
63
66 Q_INVOKABLE const QString roleForPlugin()const override;
67
70 QIcon icon(vtkIdType itemID) override;
71
73 QIcon visibilityIcon(int visible) override;
74
76 QString tooltip(vtkIdType itemID)const override;
77
79 void setDisplayVisibility(vtkIdType itemID, int visible) override;
80
83 int getDisplayVisibility(vtkIdType itemID)const override;
84
88
91 void showVisibilityContextMenuActionsForItem(vtkIdType itemID) override;
92
95 bool showItemInView(vtkIdType itemID, vtkMRMLAbstractViewNode* viewNode, vtkIdList* allItemsToShow) override;
96
97public:
100
101protected slots:
103 void toggle2DOutlineVisibility(bool checked);
104
105protected:
106 QScopedPointer<qSlicerSubjectHierarchyLabelMapsPluginPrivate> d_ptr;
107
108private:
111};
112
113#endif
qSlicerSubjectHierarchyAbstractPlugin(QObject *parent=nullptr)
QString tooltip(vtkIdType itemID) const override
Generate tooltip for a owned subject hierarchy item.
QIcon visibilityIcon(int visible) override
Get visibility icon for a visibility state.
void showLabelMapInAllViews(vtkMRMLLabelMapVolumeNode *node)
Show labelmap in all slice views. The argument node replaces any labelmap shown on the label layer.
void setDisplayVisibility(vtkIdType itemID, int visible) override
Set display visibility of a owned subject hierarchy item.
double canOwnSubjectHierarchyItem(vtkIdType itemID) const override
qSlicerSubjectHierarchyLabelMapsPlugin(QObject *parent=nullptr)
QList< QAction * > visibilityContextMenuActions() const override
QIcon icon(vtkIdType itemID) override
Q_INVOKABLE const QString roleForPlugin() const override
void showVisibilityContextMenuActionsForItem(vtkIdType itemID) override
QScopedPointer< qSlicerSubjectHierarchyLabelMapsPluginPrivate > d_ptr
bool showItemInView(vtkIdType itemID, vtkMRMLAbstractViewNode *viewNode, vtkIdList *allItemsToShow) override
int getDisplayVisibility(vtkIdType itemID) const override
void toggle2DOutlineVisibility(bool checked)
Toggle labelmap outline visibility in the slice views.
double canAddNodeToSubjectHierarchy(vtkMRMLNode *node, vtkIdType parentItemID=vtkMRMLSubjectHierarchyNode::INVALID_ITEM_ID) const override
Abstract MRML node to represent a view. The class holds the properties common to any view type (3D,...
MRML node for representing a label map volume.
Abstract Superclass for all specific types of MRML nodes.