Medical Imaging Interaction Toolkit  2018.4.99-389bf124
Medical Imaging Interaction Toolkit
QmitkDicomExternalDataWidget.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef QmitkDicomExternalDataWidget_h
14 #define QmitkDicomExternalDataWidget_h
15 
16 #include "ui_QmitkDicomExternalDataWidgetControls.h"
17 #include <MitkDicomUIExports.h>
18 
19 // include ctk
20 #include <ctkDICOMDatabase.h>
21 #include <ctkDICOMIndexer.h>
22 
23 // include QT
24 #include <QHash>
25 #include <QLabel>
26 #include <QProgressDialog>
27 #include <QString>
28 #include <QStringList>
29 #include <QVariant>
30 #include <QWidget>
31 
32 class ctkFileDialog;
33 
41 {
42  // this is needed for all Qt objects that should have a Qt meta-object
43  // (everything that derives from QObject and wants to have signal/slots)
44  Q_OBJECT
45 
46 public:
47  static const std::string Widget_ID;
48 
54  QmitkDicomExternalDataWidget(QWidget *parent);
55 
59  ~QmitkDicomExternalDataWidget() override;
60 
66  virtual void CreateQtPartControl(QWidget *parent);
67 
71  void Initialize();
72 
73 signals:
74 
76  void SignalStartDicomImport(const QStringList &);
77 
79  void SignalDicomToDataManager(QHash<QString, QVariant>);
80 
81 public slots:
82 
84  void OnDownloadButtonClicked();
85 
87  void OnViewButtonClicked();
88 
90  void OnStartDicomImport(const QString &);
91 
92  void OnSeriesSelectionChanged(const QStringList &s);
93 
94 protected:
97  QStringList GetFileNamesFromIndex();
98 
100  void SetupImportDialog();
101 
102  void SetupProgressDialog();
103 
104  ctkDICOMDatabase *m_ExternalDatabase;
105  ctkDICOMIndexer *m_ExternalIndexer;
106  ctkFileDialog *m_ImportDialog;
107 
108  QProgressDialog *m_ProgressDialog;
110 
111  Ui::QmitkDicomExternalDataWidgetControls *m_Controls;
112 };
113 
114 #endif // _QmitkDicomExternalDataWidget_H_INCLUDED
Ui::QmitkDicomExternalDataWidgetControls * m_Controls
QmitkDicomExternalDataWidget is a QWidget providing functionality for dicom import.
#define MITKDICOMUI_EXPORT