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
qMRMLEventLogger.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Program: 3D Slicer
4
5 Copyright (c) Kitware Inc.
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 Jean-Christophe Fillion-Robin, Kitware Inc.
17 and was partially funded by NIH grant 3P41RR013218-12S1
18
19==============================================================================*/
20
21#ifndef __qMRMLEventLogger_h
22#define __qMRMLEventLogger_h
23
24// Qt includes
25#include <QObject>
26
27// CTK includes
28#include <ctkPimpl.h>
29
30#include "qMRMLWidgetsExport.h"
31
32class qMRMLEventLoggerPrivate;
33class vtkMRMLScene;
34class vtkObject;
35
36class QMRML_WIDGETS_EXPORT qMRMLEventLogger: public QObject
37{
38 Q_OBJECT
39public:
40 typedef QObject Superclass;
41 explicit qMRMLEventLogger(QObject* parent = nullptr);
43
47
61
62public slots:
65 void listenNodeAddedEvent(bool listen);
66 void listenNodeRemovedEvent(bool listen);
67 void listenNewSceneEvent(bool listen);
68 void listenSceneClosedEvent(bool listen);
70 void listenMetadataAddedEvent(bool listen);
74 void listenSceneImportedEvent(bool listen);
75 void listenSceneRestoredEvent(bool listen);
76
77 virtual void onNodeAddedEvent(vtkObject* caller, vtkObject* call_data);
78 virtual void onNodeRemovedEvent(vtkObject* caller, vtkObject* call_data);
79 virtual void onNewSceneEvent();
80 virtual void onSceneClosedEvent();
82 virtual void onMetadataAddedEvent();
86 virtual void onSceneImportedEvent();
87 virtual void onSceneRestoredEvent();
88
90 void setConsoleOutputEnabled(bool enabled);
91
92signals:
95 void signalNodeAddedEvent(vtkObject* caller, vtkObject* call_data);
96 void signalNodeRemovedEvent(vtkObject* caller, vtkObject* call_data);
106
107protected:
108 QScopedPointer<qMRMLEventLoggerPrivate> d_ptr;
109
110private:
111 Q_DECLARE_PRIVATE(qMRMLEventLogger);
112 Q_DISABLE_COPY(qMRMLEventLogger);
113};
114
115#endif
void signalImportProgressFeedbackEvent()
void signalMetadataAddedEvent()
virtual void onSceneImportedEvent()
void listenSceneClosedEvent(bool listen)
bool listeningImportProgressFeedbackEvent()
void signalSceneImportedEvent()
bool listeningNodeRemovedEvent()
void listenSceneImportedEvent(bool listen)
bool listeningNodeAddedEvent()
Return true if the corresponding event if listened by the eventLogger.
bool listeningSaveProgressFeedbackEvent()
bool listeningSceneAboutToBeClosedEvent()
bool listeningMetadataAddedEvent()
void listenImportProgressFeedbackEvent(bool listen)
void listenSaveProgressFeedbackEvent(bool listen)
void listenNodeAddedEvent(bool listen)
Allow to enable or disable the listening of specific event.
bool listeningNewSceneEvent()
bool listeningSceneImportedEvent()
virtual void onNodeAddedEvent(vtkObject *caller, vtkObject *call_data)
void signalNodeAddedEvent(vtkObject *caller, vtkObject *call_data)
Emitted when the associated MRML scene event is fired.
virtual void onImportProgressFeedbackEvent()
bool listeningSceneRestoredEvent()
virtual void onSceneAboutToBeImportedEvent()
virtual void onNodeRemovedEvent(vtkObject *caller, vtkObject *call_data)
void signalSaveProgressFeedbackEvent()
virtual void onSaveProgressFeedbackEvent()
void listenSceneAboutToBeImportedEvent(bool listen)
void listenNewSceneEvent(bool listen)
void signalSceneClosedEvent()
QScopedPointer< qMRMLEventLoggerPrivate > d_ptr
void signalSceneRestoredEvent()
virtual void onSceneAboutToBeClosedEvent()
void signalNewSceneEvent()
bool listeningSceneClosedEvent()
qMRMLEventLogger(QObject *parent=nullptr)
void listenMetadataAddedEvent(bool listen)
void signalNodeRemovedEvent(vtkObject *caller, vtkObject *call_data)
virtual void onMetadataAddedEvent()
void setMRMLScene(vtkMRMLScene *scene)
Set the MRML scene that should be listened for events.
void listenNodeRemovedEvent(bool listen)
~qMRMLEventLogger() override
void signalSceneAboutToBeImportedEvent()
bool listeningSceneAboutToBeImportedEvent()
virtual void onSceneRestoredEvent()
void setConsoleOutputEnabled(bool enabled)
Enable / Disable console output.
virtual void onSceneClosedEvent()
void listenSceneRestoredEvent(bool listen)
void signalSceneAboutToBeClosedEvent()
virtual void onNewSceneEvent()
void listenSceneAboutToBeClosedEvent(bool listen)
A set of MRML Nodes that supports serialization and undo/redo.