CTK  0.1.0
The Common Toolkit is a community effort to provide support code for medical image analysis, surgical navigation, and related projects.
ctkDICOMAppWidget.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Library: CTK
4 
5  Copyright (c) Kitware Inc.
6 
7  Licensed under the Apache License, Version 2.0 (the "License");
8  you may not use this file except in compliance with the License.
9  You may obtain a copy of the License at
10 
11  http://www.apache.org/licenses/LICENSE-2.0.txt
12 
13  Unless required by applicable law or agreed to in writing, software
14  distributed under the License is distributed on an "AS IS" BASIS,
15  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  See the License for the specific language governing permissions and
17  limitations under the License.
18 
19 =========================================================================*/
20 
21 #ifndef __ctkDICOMAppWidget_h
22 #define __ctkDICOMAppWidget_h
23 
24 // Qt includes
25 #include <QWidget>
26 
27 #include "ctkDICOMWidgetsExport.h"
28 
29 class ctkDICOMAppWidgetPrivate;
30 class ctkThumbnailLabel;
31 class QModelIndex;
32 class ctkDICOMDatabase;
33 
35 class CTK_DICOM_WIDGETS_EXPORT ctkDICOMAppWidget : public QWidget
36 {
37  Q_OBJECT
38  Q_PROPERTY(ctkDICOMDatabase* database READ database)
39  Q_PROPERTY(QString databaseDirectory READ databaseDirectory WRITE setDatabaseDirectory)
40  Q_PROPERTY(bool searchWidgetPopUpMode READ searchWidgetPopUpMode WRITE setSearchWidgetPopUpMode)
41  Q_PROPERTY(QStringList tagsToPrecache READ tagsToPrecache WRITE setTagsToPrecache)
42  Q_PROPERTY(bool displayImportSummary READ displayImportSummary WRITE setDisplayImportSummary)
43 
44 public:
45  typedef QWidget Superclass;
46  explicit ctkDICOMAppWidget(QWidget* parent=0);
47  virtual ~ctkDICOMAppWidget();
48 
50  QString databaseDirectory() const;
51 
56  void setTagsToPrecache(const QStringList tags);
57  const QStringList tagsToPrecache();
58 
63 
67  void setSearchWidgetPopUpMode(bool flag);
70 
81 
82 public Q_SLOTS:
83  void setDatabaseDirectory(const QString& directory);
84  void onFileIndexed(const QString& filePath);
85 
90 
91  void suspendModel();
92  void resumeModel();
93  void resetModel();
94 
98  void onImportDirectory(QString directory);
99 
102  void onPatientAdded(int, QString, QString, QString);
103  void onStudyAdded(QString);
104  void onSeriesAdded(QString);
105  void onInstanceAdded(QString);
106 
107 Q_SIGNALS:
109  void databaseDirectoryChanged(const QString&);
114 
115 protected:
116  QScopedPointer<ctkDICOMAppWidgetPrivate> d_ptr;
117 protected Q_SLOTS:
118  void onModelSelected(const QModelIndex& index);
119 
122 
125 
127  void onNextImage();
129  void onNextSeries();
131  void onNextStudy();
135 
137  void onTreeCollapsed(const QModelIndex& index);
138 
140  void onTreeExpanded(const QModelIndex& index);
141 
144 
147 
150 
153 
155  void onImagePreviewDisplayed(int imageID, int count);
156 
157 private Q_SLOTS:
158 
159  void onSearchPopUpButtonClicked();
160 
161  void onSearchWidgetTopLevelChanged(bool topLevel);
162 
163 private:
164  Q_DECLARE_PRIVATE(ctkDICOMAppWidget);
165  Q_DISABLE_COPY(ctkDICOMAppWidget);
166 };
167 
168 #endif
ctkDICOMAppWidget::Superclass
QWidget Superclass
Definition: ctkDICOMAppWidget.h:45
ctkDICOMAppWidget::onInstanceAdded
void onInstanceAdded(QString)
ctkDICOMAppWidget::searchWidgetPopUpMode
bool searchWidgetPopUpMode()
ctkDICOMAppWidget::setSearchWidgetPopUpMode
void setSearchWidgetPopUpMode(bool flag)
ctkDICOMAppWidget::onStudyAdded
void onStudyAdded(QString)
ctkDICOMAppWidget::queryRetrieveFinished
void queryRetrieveFinished()
Emited when query/retrieve operation has happened.
ctkDICOMAppWidget::onImagePreviewDisplayed
void onImagePreviewDisplayed(int imageID, int count)
To be called after image preview displayed an image.
ctkDICOMAppWidget::openExportDialog
void openExportDialog()
ctkDICOMAppWidget::studiesAddedDuringImport
int studiesAddedDuringImport()
ctkDICOMAppWidget
Definition: ctkDICOMAppWidget.h:36
ctkDICOMDatabase
Definition: ctkDICOMDatabase.h:53
ctkDICOMAppWidget::tagsToPrecache
const QStringList tagsToPrecache()
ctkDICOMAppWidget::onQueryRetrieveFinished
void onQueryRetrieveFinished()
To be called when dialog finishes.
ctkDICOMAppWidget::patientsAddedDuringImport
int patientsAddedDuringImport()
Accessors to status of last directory import operation.
ctkDICOMAppWidget::suspendModel
void suspendModel()
ctkDICOMAppWidget::database
ctkDICOMDatabase * database()
ctkDICOMAppWidget::onImportDirectory
void onImportDirectory(QString directory)
ctkDICOMAppWidget::onNextStudy
void onNextStudy()
ctkDICOMAppWidget::directoryImported
void directoryImported()
Emited when the directory import operation has completed.
ctkDICOMAppWidget::onThumbnailSelected
void onThumbnailSelected(const ctkThumbnailLabel &widget)
To be called when a thumbnail in thumbnail list widget is selected.
ctkDICOMAppWidget::openQueryDialog
void openQueryDialog()
ctkDICOMAppWidget::ctkDICOMAppWidget
ctkDICOMAppWidget(QWidget *parent=0)
ctkDICOMAppWidget::openImportDialog
void openImportDialog()
ctkDICOMAppWidget::onTreeCollapsed
void onTreeCollapsed(const QModelIndex &index)
To be called when an entry of the tree list is collapsed.
ctkDICOMAppWidget::onPatientAdded
void onPatientAdded(int, QString, QString, QString)
ctkDICOMAppWidget::onSeriesAdded
void onSeriesAdded(QString)
ctkDICOMAppWidget::onModelSelected
void onModelSelected(const QModelIndex &index)
ctkDICOMAppWidget::databaseDirectory
QString databaseDirectory() const
Directory being used to store the dicom database.
ctkDICOMAppWidget::onTreeExpanded
void onTreeExpanded(const QModelIndex &index)
To be called when an entry of the tree list is expanded.
ctkDICOMAppWidget::onRemoveAction
void onRemoveAction()
ctkDICOMAppWidget::onThumbnailDoubleClicked
void onThumbnailDoubleClicked(const ctkThumbnailLabel &widget)
To be called when a thumbnail in thumbnail list widget is double-clicked.
ctkDICOMAppWidget::setTagsToPrecache
void setTagsToPrecache(const QStringList tags)
ctkDICOMAppWidget::resetModel
void resetModel()
ctkDICOMAppWidget::onNextImage
void onNextImage()
To be called when previous and next buttons are clicked.
ctkDICOMAppWidget::onNextSeries
void onNextSeries()
ctkDICOMAppWidget::onThumbnailWidthSliderValueChanged
void onThumbnailWidthSliderValueChanged(int val)
To be called when the value of thumbnail size slider bar is changed.
ctkDICOMAppWidget::seriesAddedDuringImport
int seriesAddedDuringImport()
ctkDICOMAppWidget::onAutoPlayCheckboxStateChanged
void onAutoPlayCheckboxStateChanged(int state)
To be called when auto-play checkbox state changed.
ctkDICOMAppWidget::instancesAddedDuringImport
int instancesAddedDuringImport()
ctkDICOMAppWidget::resumeModel
void resumeModel()
ctkDICOMAppWidget::onPreviousStudy
void onPreviousStudy()
ctkDICOMAppWidget::d_ptr
QScopedPointer< ctkDICOMAppWidgetPrivate > d_ptr
Definition: ctkDICOMAppWidget.h:116
ctkDICOMAppWidget::databaseDirectoryChanged
void databaseDirectoryChanged(const QString &)
Emited when directory is changed.
ctkDICOMAppWidget::onPreviousSeries
void onPreviousSeries()
ctkDICOMAppWidget::updateDatabaseSchemaIfNeeded
void updateDatabaseSchemaIfNeeded()
ctkDICOMAppWidget::setDatabaseDirectory
void setDatabaseDirectory(const QString &directory)
ctkDICOMAppWidget::onFileIndexed
void onFileIndexed(const QString &filePath)
ctkDICOMAppWidget::onAutoPlayTimer
void onAutoPlayTimer()
Called by timer for auto-play functionality.
ctkDICOMAppWidget::onSearchParameterChanged
void onSearchParameterChanged()
To be called when search parameters in query widget changed.
ctkDICOMAppWidget::~ctkDICOMAppWidget
virtual ~ctkDICOMAppWidget()
ctkThumbnailLabel
Definition: ctkThumbnailLabel.h:39
ctkDICOMAppWidget::displayImportSummary
bool displayImportSummary()
ctkDICOMAppWidget::onPreviousImage
void onPreviousImage()
ctkDICOMAppWidget::setDisplayImportSummary
void setDisplayImportSummary(bool)