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
qSlicerSubjectHierarchyMarkupsPlugin.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 __qSlicerSubjectHierarchyMarkupsPlugin_h
24#define __qSlicerSubjectHierarchyMarkupsPlugin_h
25
26// SubjectHierarchy includes
28
29#include "qSlicerMarkupsSubjectHierarchyPluginsExport.h"
30
31class qSlicerSubjectHierarchyMarkupsPluginPrivate;
32
33class Q_SLICER_MARKUPS_SUBJECT_HIERARCHY_PLUGINS_EXPORT qSlicerSubjectHierarchyMarkupsPlugin : public qSlicerSubjectHierarchyAbstractPlugin
34{
35public:
36 Q_OBJECT
37
38public:
40 qSlicerSubjectHierarchyMarkupsPlugin(QObject* parent = nullptr);
42
43public:
52 vtkMRMLNode* node,
53 vtkIdType parentItemID=vtkMRMLSubjectHierarchyNode::INVALID_ITEM_ID )const override;
54
61 double canOwnSubjectHierarchyItem(vtkIdType itemID)const override;
62
65 Q_INVOKABLE const QString roleForPlugin()const override;
66
69 QIcon icon(vtkIdType itemID) override;
70
72 QIcon visibilityIcon(int visible) override;
73
82 void setDisplayColor(vtkIdType itemID, QColor color, QMap<int, QVariant> terminologyMetaData) override;
83
91 QColor getDisplayColor(vtkIdType itemID, QMap<int, QVariant> &terminologyMetaData)const override;
92
93 void showContextMenuActionsForItem(vtkIdType itemID) override;
94
98
102 void showViewContextMenuActionsForItem(vtkIdType itemID, QVariantMap eventData) override;
103
107
110 void showVisibilityContextMenuActionsForItem(vtkIdType itemID) override;
111
112 void editProperties(vtkIdType itemID) override;
113
114protected slots:
144
145protected:
146 QScopedPointer<qSlicerSubjectHierarchyMarkupsPluginPrivate> d_ptr;
147
148private:
149 Q_DECLARE_PRIVATE(qSlicerSubjectHierarchyMarkupsPlugin);
151};
152
153#endif
qSlicerSubjectHierarchyAbstractPlugin(QObject *parent=nullptr)
void refocusCamera()
Called when clicking on refocus camera action.
void requestDeleteNode()
Called when clicking on delete node action.
void renamePoint()
Called when clicking on rename point action.
void showVisibilityContextMenuActionsForItem(vtkIdType itemID) override
void deletePoint()
Called when clicking on delete point action.
qSlicerSubjectHierarchyMarkupsPlugin(QObject *parent=nullptr)
void jumpToPreviousPoint()
Called when clicking on jump to previous point action.
QScopedPointer< qSlicerSubjectHierarchyMarkupsPluginPrivate > d_ptr
void showContextMenuActionsForItem(vtkIdType itemID) override
void toggleCurrentItemHandleInteractive()
toggle handle interactive for the current subject hierarchy item
QColor getDisplayColor(vtkIdType itemID, QMap< int, QVariant > &terminologyMetaData) const override
void editProperties(vtkIdType itemID) override
Open module belonging to item and set inputs in opened module.
QIcon icon(vtkIdType itemID) override
void toggleHandleTypeVisibility()
toggle the visibility of the interaction handle type for the active node in view
void jumpToClosestPoint()
Called when clicking on jump to closest point action.
QList< QAction * > viewContextMenuActions() const override
Q_INVOKABLE const QString roleForPlugin() const override
QIcon visibilityIcon(int visible) override
Get visibility icon for a visibility state.
void editNodeTerminology()
Called when clicking on edit terminology action.
double canOwnSubjectHierarchyItem(vtkIdType itemID) const override
void jumpToNextPoint()
Called when clicking on jump to next point action.
void setDisplayColor(vtkIdType itemID, QColor color, QMap< int, QVariant > terminologyMetaData) override
void toggleSelectPoint()
Called when clicking on toggle select point action.
QList< QAction * > visibilityContextMenuActions() const override
double canAddNodeToSubjectHierarchy(vtkMRMLNode *node, vtkIdType parentItemID=vtkMRMLSubjectHierarchyNode::INVALID_ITEM_ID) const override
void showViewContextMenuActionsForItem(vtkIdType itemID, QVariantMap eventData) override
void toggleCurrentItemHandleTypeVisibility()
toggle the visibility of the interaction handle type for the current subject hierarchy item
void toggleHandleInteractive()
Called when clicking on handle interactive action in view.
Abstract Superclass for all specific types of MRML nodes.
QMap< QString, QVariant > QVariantMap