Slicer  4.11
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
qSlicerAnnotationModuleWidget.h
Go to the documentation of this file.
1 #ifndef __qSlicerAnnotationModuleWidget_h
2 #define __qSlicerAnnotationModuleWidget_h
3 
4 // CTK includes
5 #include <ctkVTKObject.h>
6 
7 // Slicer includes
9 #include "../qSlicerAnnotationsModuleExport.h"
10 
13 class qSlicerAnnotationModuleWidgetPrivate;
15 class vtkMRMLNode;
16 
18 class Q_SLICER_QTMODULES_ANNOTATIONS_EXPORT qSlicerAnnotationModuleWidget :
20 {
21  Q_OBJECT
22  QVTK_OBJECT
23 public:
25  qSlicerAnnotationModuleWidget(QWidget *parent=nullptr);
27 
29  enum
30  {
31  TextNode = 1000,
40  };
41 
45  void updateWidgetFromInteractionMode(vtkMRMLInteractionNode *interactionNode);
46 
47  bool setEditedNode(vtkMRMLNode* node, QString role = QString(), QString context = QString()) override;
48 
49 protected:
50 
51 public slots:
53  void refreshTree();
55  void onHierarchyNodeAddedEvent(vtkObject *caller, vtkObject *obj);
56 
59  void grabSnapShot();
60 
63  void updateActiveHierarchyLabel();
64 
65 protected slots:
66 
68  void propertyEditButtonClicked(QString mrmlId);
69 
70  // Table and Property Modify
71  void moveDownSelected();
72  void moveUpSelected();
73 
74 
75  //------------------------------------------------------------------
76  // Daniel's approved code starting here
77 
79  void onAddHierarchyButtonClicked();
80 
82  void onJumpSlicesButtonClicked();
83 
85  void selectAllButtonClicked();
86 
88  void unselectAllButtonClicked();
89 
91  void visibleSelectedButtonClicked();
92 
94  void lockSelectedButtonClicked();
95 
97  void deleteSelectedButtonClicked();
98 
100  void invisibleHierarchyButtonClicked();
101  void visibleHierarchyButtonClicked();
103  void lockHierarchyButtonClicked();
104  void unlockHierarchyButtonClicked();
105 
106  // Property dialog
107  void propertyRestored();
108  void propertyAccepted();
109 
110  // Report dialog
111  void reportDialogRejected();
112  void reportDialogAccepted();
113  void onReportButtonClicked();
114 
115 protected:
116  QScopedPointer<qSlicerAnnotationModuleWidgetPrivate> d_ptr;
117 
118 private:
119  Q_DECLARE_PRIVATE(qSlicerAnnotationModuleWidget);
120  Q_DISABLE_COPY(qSlicerAnnotationModuleWidget);
121 
122  void setup() override;
123 
124  qSlicerAnnotationModulePropertyDialog* m_PropertyDialog;
125  qSlicerAnnotationModuleReportDialog* m_ReportDialog;
126 
128  int m_CurrentAnnotationType;
129 
130 };
131 
132 #endif
Q_INVOKABLE bool setEditedNode(vtkMRMLNode *node, QString role=QString(), QString context=QString()) override
Node editing.
qSlicerAbstractModuleWidget Superclass
QScopedPointer< qSlicerAnnotationModuleWidgetPrivate > d_ptr
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:167