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
qMRMLSequenceEditWidget.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Program: 3D Slicer
4
5 Copyright (c) Brigham and Women's Hospital
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==============================================================================*/
17
18#ifndef __qMRMLSequenceEditWidget_h
19#define __qMRMLSequenceEditWidget_h
20
21// CTK includes
22#include <ctkPimpl.h>
23#include <ctkVTKObject.h>
24
25// Slicer includes
26#include "qMRMLWidget.h"
27
28#include "qSlicerSequencesModuleWidgetsExport.h"
29
30class QListWidgetItem;
31class qMRMLSequenceEditWidgetPrivate;
32class vtkMRMLNode;
34
35class Q_SLICER_MODULE_SEQUENCES_WIDGETS_EXPORT qMRMLSequenceEditWidget
36: public qMRMLWidget
37{
38 Q_OBJECT
39 QVTK_OBJECT
41
42public:
44 qMRMLSequenceEditWidget(QWidget *newParent = 0);
46
48
49public slots:
51 void setMRMLScene(vtkMRMLScene* scene) override;
52
55 void setMRMLSequenceNode(vtkMRMLNode* sequenceNode);
56
58
59protected slots:
61 void updateCandidateNodesWidgetFromMRML(bool forceUpdate = false);
62
63 void candidateNodeItemClicked(QListWidgetItem*);
64 void candidateNodeItemDoubleClicked(QListWidgetItem*);
65 // Returns the index value of the added candidate node
67 void onDataNodeEdited(int row, int column);
70 void onIndexTypeEdited(QString indexTypeString);
72
75
77 void onNodeAddedEvent(vtkObject* scene, vtkObject* node);
78 void onNodeRemovedEvent(vtkObject* scene, vtkObject* node);
83
84protected:
85 QScopedPointer<qMRMLSequenceEditWidgetPrivate> d_ptr;
86
87private:
88 Q_DECLARE_PRIVATE(qMRMLSequenceEditWidget);
89 Q_DISABLE_COPY(qMRMLSequenceEditWidget);
90};
91
92#endif
void setMRMLScene(vtkMRMLScene *scene) override
Reimplemented from qMRMLWidget.
QString onAddCurrentCandidateNode()
void onMRMLSceneEndBatchProcessEvent()
vtkMRMLSequenceNode * mrmlSequenceNode()
void setCandidateNodesSectionVisible(bool)
void onIndexTypeEdited(QString indexTypeString)
void setMRMLSequenceNode(vtkMRMLSequenceNode *sequenceNode)
void candidateNodeItemDoubleClicked(QListWidgetItem *)
void updateCandidateNodesWidgetFromMRML(bool forceUpdate=false)
void onNodeAddedEvent(vtkObject *scene, vtkObject *node)
Respond to the scene events.
qMRMLSequenceEditWidget(QWidget *newParent=0)
QScopedPointer< qMRMLSequenceEditWidgetPrivate > d_ptr
void setMRMLSequenceNode(vtkMRMLNode *sequenceNode)
bool isCandidateNodesSectionVisible()
void candidateNodeItemClicked(QListWidgetItem *)
void onNodeRemovedEvent(vtkObject *scene, vtkObject *node)
QVTK_OBJECTbool candidateNodesSectionVisible
void onRemoveDataNodeButtonClicked()
void onDataNodeEdited(int row, int column)
~qMRMLSequenceEditWidget() override
qMRMLWidget(QWidget *parent=nullptr, Qt::WindowFlags f=Qt::WindowFlags())
Abstract Superclass for all specific types of MRML nodes.
A set of MRML Nodes that supports serialization and undo/redo.
MRML node for representing a sequence of MRML nodes.