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
qSlicerIOOptionsWidget.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 Julien Finet, Kitware Inc.
17 and was partially funded by NIH grant 3P41RR013218-12S1
18
19==============================================================================*/
20
21#ifndef __qSlicerIOOptionsWidget_h
22#define __qSlicerIOOptionsWidget_h
23
25#include "qSlicerBaseQTGUIExport.h"
26#include "qSlicerIOOptions.h"
27#include "qSlicerWidget.h"
28class qSlicerIOOptionsWidgetPrivate;
29
30class Q_SLICER_BASE_QTGUI_EXPORT qSlicerIOOptionsWidget
31 : public qSlicerWidget
32 , public qSlicerIOOptions
33{
34 Q_OBJECT
35public:
37 explicit qSlicerIOOptionsWidget(QWidget* parent = nullptr);
39
42 bool isValid()const override;
43
44 // Update GUI widgets based on properties.
45 // Derived classes can override this method to set default
46 // options on the GUI.
47 virtual void updateGUI(const qSlicerIO::IOProperties& ioProperties);
48
49public slots:
50 virtual void setFileName(const QString& fileName);
51 virtual void setFileNames(const QStringList& fileNames);
52
53signals:
54 void validChanged(bool);
55
56protected:
59 qSlicerIOOptionsWidget(qSlicerIOOptionsPrivate* pimpl, QWidget* parent);
60 void updateValid() override;
61};
62
63#endif
virtual void updateGUI(const qSlicerIO::IOProperties &ioProperties)
~qSlicerIOOptionsWidget() override
Q_DECLARE_PRIVATE_D(qGetPtrHelper(qSlicerIOOptions::d_ptr), qSlicerIOOptions)
qSlicerIOOptionsWidget(qSlicerIOOptionsPrivate *pimpl, QWidget *parent)
void updateValid() override
Must be called anytime the result of isValid() can change.
qSlicerIOOptionsWidget(QWidget *parent=nullptr)
virtual void setFileNames(const QStringList &fileNames)
virtual void setFileName(const QString &fileName)
bool isValid() const override
qSlicerIOOptions()
Constructor initialize empty properties.
QScopedPointer< qSlicerIOOptionsPrivate > d_ptr
QVariantMap IOProperties
Definition qSlicerIO.h:53
qSlicerWidget(QWidget *parent=nullptr, Qt::WindowFlags f=Qt::WindowFlags())