Slicer  5.1
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
qMRMLPlotWidget.h
Go to the documentation of this file.
1 /*==============================================================================
2 
3  Copyright (c) Kapteyn Astronomical Institute
4  University of Groningen, Groningen, Netherlands. All Rights Reserved.
5 
6  See COPYRIGHT.txt
7  or http://www.slicer.org/copyright/copyright.txt for details.
8 
9  Unless required by applicable law or agreed to in writing, software
10  distributed under the License is distributed on an "AS IS" BASIS,
11  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  See the License for the specific language governing permissions and
13  limitations under the License.
14 
15  This file was originally developed by Davide Punzo, Kapteyn Astronomical Institute,
16  and was supported through the European Research Council grant nr. 291531.
17 
18 ==============================================================================*/
19 
20 #ifndef __qMRMLPlotWidget_h
21 #define __qMRMLPlotWidget_h
22 
23 // Qt includes
24 #include <QWidget>
25 class QResizeEvent;
26 
27 // qMRMLWidget includes
28 #include "qMRMLWidget.h"
30 class qMRMLPlotView;
31 class qMRMLPlotWidgetPrivate;
32 
33 // MRML includes
35 class vtkMRMLScene;
36 
43 class QMRML_WIDGETS_EXPORT qMRMLPlotWidget : public qMRMLWidget
44 {
45  Q_OBJECT
46  Q_PROPERTY(QString viewLabel READ viewLabel WRITE setViewLabel)
47 public:
50 
52  explicit qMRMLPlotWidget(QWidget* parent = nullptr);
53  ~qMRMLPlotWidget() override;
54 
56  Q_INVOKABLE vtkMRMLPlotViewNode* mrmlPlotViewNode()const;
57 
61  Q_INVOKABLE qMRMLPlotView* plotView()const;
62 
64  Q_INVOKABLE qMRMLPlotViewControllerWidget* plotController()const;
65 
69  QString viewLabel()const;
70 
74  void setViewLabel(const QString& newPlotViewLabel);
75 
76 public slots:
78  void setMRMLPlotViewNode(vtkMRMLPlotViewNode* newPlotViewNode);
79 
80 protected:
81  QScopedPointer<qMRMLPlotWidgetPrivate> d_ptr;
82 
83 private:
84  Q_DECLARE_PRIVATE(qMRMLPlotWidget);
85  Q_DISABLE_COPY(qMRMLPlotWidget);
86 };
87 
88 #endif
MRML node to represent Plot view parameters.
qMRMLWidget Superclass
Superclass typedef.
A set of MRML Nodes that supports serialization and undo/redo.
Definition: vtkMRMLScene.h:57
qMRMLPlotView is the display canvas for a Plot.
Definition: qMRMLPlotView.h:45
Base class for any widget that requires a MRML Scene.
Definition: qMRMLWidget.h:35
qMRMLPlotWidget is the toplevel Plotting widget that can be packed in a layout.
QScopedPointer< qMRMLPlotWidgetPrivate > d_ptr