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
qMRMLSequenceBrowserPlayWidget.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 This file was originally developed by Laurent Chauvin, Brigham and Women's
17 Hospital. The project was supported by grants 5P01CA067165,
18 5R01CA124377, 5R01CA138586, 2R44DE019322, 7R01CA124377,
19 5R42CA137886, 5R42CA137886
20 It was then updated for the Markups module by Nicole Aucoin, BWH.
21
22==============================================================================*/
23
24#ifndef __qMRMLSequenceBrowserPlayWidget_h
25#define __qMRMLSequenceBrowserPlayWidget_h
26
27// CTK includes
28#include <ctkPimpl.h>
29#include <ctkVTKObject.h>
30
31// Slicer includes
32#include "qMRMLWidget.h"
33
34#include "qSlicerSequencesModuleWidgetsExport.h"
35
36class qMRMLSequenceBrowserPlayWidgetPrivate;
37class vtkMRMLNode;
39
40class Q_SLICER_MODULE_SEQUENCES_WIDGETS_EXPORT qMRMLSequenceBrowserPlayWidget
41: public qMRMLWidget
42{
43 Q_OBJECT
44 QVTK_OBJECT
45
50
54
55
56public:
58 qMRMLSequenceBrowserPlayWidget(QWidget *newParent = 0);
60
62 QString playPauseShortcut()const;
63
65 QString previousFrameShortcut()const;
66
68 QString nextFrameShortcut()const;
69
75
76public slots:
79 void setPlaybackEnabled(bool play);
80 void setRecordingEnabled(bool play);
81 void setPlaybackRateFps(double playbackRateFps);
82 void setPlaybackLoopEnabled(bool loopEnabled);
84
86 void setPlayPauseShortcut(QString keySequence);
87
89 void setPreviousFrameShortcut(QString keySequence);
90
92 void setNextFrameShortcut(QString keySequence);
93
94 void onVcrFirst();
96 void onVcrNext();
97 void onVcrLast();
100
101protected slots:
103
104protected:
105 QScopedPointer<qMRMLSequenceBrowserPlayWidgetPrivate> d_ptr;
106
107private:
108 Q_DECLARE_PRIVATE(qMRMLSequenceBrowserPlayWidget);
109 Q_DISABLE_COPY(qMRMLSequenceBrowserPlayWidget);
110
111};
112
113#endif
void setPlaybackRateFps(double playbackRateFps)
void setPlaybackEnabled(bool play)
void setPreviousFrameShortcut(QString keySequence)
Add a keyboard shortcut for previous frame button.
qMRMLSequenceBrowserPlayWidget(QWidget *newParent=0)
QString playPauseShortcut() const
Get keyboard shortcut string for play/pause button.
void setMRMLSequenceBrowserNode(vtkMRMLSequenceBrowserNode *browserNode)
void setRecordingEnabled(bool play)
void setNextFrameShortcut(QString keySequence)
Add a keyboard shortcut for next frame button.
QString nextFrameShortcut() const
Get keyboard shortcut string for next frame button.
QString previousFrameShortcut() const
Get keyboard shortcut string for previous frame button.
void setPlaybackLoopEnabled(bool loopEnabled)
void setPlayPauseShortcut(QString keySequence)
Add a keyboard shortcut for play/pause button.
void setRecordingControlsVisible(bool show)
QScopedPointer< qMRMLSequenceBrowserPlayWidgetPrivate > d_ptr
qMRMLWidget(QWidget *parent=nullptr, Qt::WindowFlags f=Qt::WindowFlags())
Abstract Superclass for all specific types of MRML nodes.