CTK  0.1.0
The Common Toolkit is a community effort to provide support code for medical image analysis, surgical navigation, and related projects.
Public Types | Public Slots | Signals | Public Member Functions | Static Public Member Functions | Protected Slots | Protected Member Functions | Protected Attributes | Properties | List of all members
ctkDICOMBrowser Class Reference

The DICOM browser widget provides an interface to organize DICOM data stored in a local ctkDICOMDatabase. More...

#include <Libs/DICOM/Widgets/ctkDICOMBrowser.h>

Inheritance diagram for ctkDICOMBrowser:
Inheritance graph
[legend]
Collaboration diagram for ctkDICOMBrowser:
Collaboration graph
[legend]

Public Types

enum  ImportDirectoryMode { ImportDirectoryCopy = 0 , ImportDirectoryAddLink }
 
typedef ctkDICOMBrowser Self
 
typedef QWidget Superclass
 

Public Slots

void importDirectories (QStringList directories, ctkDICOMBrowser::ImportDirectoryMode mode=ImportDirectoryAddLink)
 Import directories. More...
 
void importDirectory (QString directory, ctkDICOMBrowser::ImportDirectoryMode mode=ImportDirectoryAddLink)
 Import a directory. More...
 
void onFileIndexed (const QString &filePath)
 
void onImportDirectory (QString directory, ctkDICOMBrowser::ImportDirectoryMode mode=ImportDirectoryAddLink)
 
void onInstanceAdded (QString)
 
void onPatientAdded (int, QString, QString, QString)
 
void onRemoveAction ()
 
void onRepairAction ()
 
void onSeriesAdded (QString)
 
void onStudyAdded (QString)
 
void onTablesDensityComboBox (QString)
 
void openExportDialog ()
 
void openImportDialog ()
 Pop-up file dialog allowing to select and import one or multiple DICOM directories. More...
 
void openQueryDialog ()
 
void setDatabaseDirectory (const QString &directory)
 
void setImportDirectoryMode (ctkDICOMBrowser::ImportDirectoryMode mode)
 Set value of ImportDirectoryMode settings. More...
 

Signals

void databaseDirectoryChanged (const QString &)
 Emited when directory is changed. More...
 
void directoryImported ()
 Emited when the directory import operation has completed. More...
 
void queryRetrieveFinished ()
 Emited when query/retrieve operation has happened. More...
 

Public Member Functions

 ctkDICOMBrowser (QWidget *parent=0)
 
Q_INVOKABLE ctkDICOMDatabasedatabase ()
 
QString databaseDirectory () const
 Directory being used to store the dicom database. More...
 
Q_INVOKABLE ctkDICOMTableManagerdicomTableManager ()
 
bool displayImportSummary ()
 
Q_INVOKABLE ctkFileDialogimportDialog () const
 Return instance of import dialog. More...
 
ctkDICOMBrowser::ImportDirectoryMode importDirectoryMode () const
 Get value of ImportDirectoryMode settings. More...
 
int instancesAddedDuringImport ()
 
int patientsAddedDuringImport ()
 Accessors to status of last directory import operation. More...
 
int seriesAddedDuringImport ()
 
void setDisplayImportSummary (bool)
 
void setTagsToPrecache (const QStringList tags)
 
int studiesAddedDuringImport ()
 
const QStringList tagsToPrecache ()
 
Q_INVOKABLE void updateDatabaseSchemaIfNeeded ()
 
virtual ~ctkDICOMBrowser ()
 

Static Public Member Functions

static Q_INVOKABLE QString databaseDirectorySettingsKey ()
 Return settings key used to store the directory. More...
 

Protected Slots

void exportSelectedPatients (QString dirPath, QStringList uids)
 
void exportSelectedSeries (QString dirPath, QStringList uids)
 
void exportSelectedStudies (QString dirPath, QStringList uids)
 
void onImportDirectoriesSelected (QStringList directories)
 Import directories. More...
 
void onImportDirectoryComboBoxCurrentIndexChanged (int index)
 
void onModelSelected (const QItemSelection &, const QItemSelection &)
 
void onPatientsRightClicked (const QPoint &point)
 Called when a right mouse click is made in the patients table. More...
 
void onQueryRetrieveFinished ()
 To be called when dialog finishes. More...
 
void onSeriesRightClicked (const QPoint &point)
 Called when a right mouse click is made in the series table. More...
 
void onStudiesRightClicked (const QPoint &point)
 Called when a right mouse click is made in the studies table. More...
 

Protected Member Functions

bool confirmDeleteSelectedUIDs (QStringList uids)
 

Protected Attributes

QScopedPointer< ctkDICOMBrowserPrivate > d_ptr
 

Properties

QString databaseDirectory
 
bool displayImportSummary
 
ctkDICOMBrowser::ImportDirectoryMode ImportDirectoryMode
 
int instancesAddedDuringImport
 
int patientsAddedDuringImport
 
int seriesAddedDuringImport
 
int studiesAddedDuringImport
 
QStringList tagsToPrecache
 

Detailed Description

The DICOM browser widget provides an interface to organize DICOM data stored in a local ctkDICOMDatabase.

Using a local database avoids redundant calculations and speed up subsequent access.

Supported operations are:

Definition at line 55 of file ctkDICOMBrowser.h.

Member Typedef Documentation

◆ Self

Definition at line 69 of file ctkDICOMBrowser.h.

◆ Superclass

typedef QWidget ctkDICOMBrowser::Superclass

Definition at line 71 of file ctkDICOMBrowser.h.

Member Enumeration Documentation

◆ ImportDirectoryMode

Enumerator
ImportDirectoryCopy 
ImportDirectoryAddLink 

Definition at line 108 of file ctkDICOMBrowser.h.

Constructor & Destructor Documentation

◆ ctkDICOMBrowser()

ctkDICOMBrowser::ctkDICOMBrowser ( QWidget *  parent = 0)
explicit

◆ ~ctkDICOMBrowser()

virtual ctkDICOMBrowser::~ctkDICOMBrowser ( )
virtual

Member Function Documentation

◆ confirmDeleteSelectedUIDs()

bool ctkDICOMBrowser::confirmDeleteSelectedUIDs ( QStringList  uids)
protected

Confirm with the user that they wish to delete the selected uids. Add information about the selected UIDs to a message box, checks for patient name, series description, study description, if all empty, uses the UID. Returns true if the user confirms the delete, false otherwise. Remembers if the user doesn't want to show the confirmation again.

◆ database()

Q_INVOKABLE ctkDICOMDatabase* ctkDICOMBrowser::database ( )

◆ databaseDirectory()

QString ctkDICOMBrowser::databaseDirectory ( ) const

Directory being used to store the dicom database.

◆ databaseDirectoryChanged

void ctkDICOMBrowser::databaseDirectoryChanged ( const QString &  )
signal

Emited when directory is changed.

◆ databaseDirectorySettingsKey()

static Q_INVOKABLE QString ctkDICOMBrowser::databaseDirectorySettingsKey ( )
static

Return settings key used to store the directory.

◆ dicomTableManager()

Q_INVOKABLE ctkDICOMTableManager* ctkDICOMBrowser::dicomTableManager ( )

◆ directoryImported

void ctkDICOMBrowser::directoryImported ( )
signal

Emited when the directory import operation has completed.

◆ displayImportSummary()

bool ctkDICOMBrowser::displayImportSummary ( )

◆ exportSelectedPatients

void ctkDICOMBrowser::exportSelectedPatients ( QString  dirPath,
QStringList  uids 
)
protectedslot

Called to export the patients associated with the selected UIDs

See also
exportSelectedStudies, exportSelectedSeries

◆ exportSelectedSeries

void ctkDICOMBrowser::exportSelectedSeries ( QString  dirPath,
QStringList  uids 
)
protectedslot

Called to export the series associated with the selected UIDs

See also
exportSelectedStudies, exportSelectedPatients

◆ exportSelectedStudies

void ctkDICOMBrowser::exportSelectedStudies ( QString  dirPath,
QStringList  uids 
)
protectedslot

Called to export the studies associated with the selected UIDs

See also
exportSelectedSeries, exportSelectedPatients

◆ importDialog()

Q_INVOKABLE ctkFileDialog* ctkDICOMBrowser::importDialog ( ) const

Return instance of import dialog.

◆ importDirectories

void ctkDICOMBrowser::importDirectories ( QStringList  directories,
ctkDICOMBrowser::ImportDirectoryMode  mode = ImportDirectoryAddLink 
)
slot

Import directories.

This can be used to externally trigger an import (i.e. for testing or to support drag-and-drop)

By default, mode is ImportDirectoryMode::ImportDirectoryAddLink is set.

See also
importDirectory(QString directory, int mode)

◆ importDirectory

void ctkDICOMBrowser::importDirectory ( QString  directory,
ctkDICOMBrowser::ImportDirectoryMode  mode = ImportDirectoryAddLink 
)
slot

Import a directory.

This can be used to externally trigger an import (i.e. for testing or to support drag-and-drop)

By default, mode is ImportDirectoryMode::ImportDirectoryAddLink is set.

◆ importDirectoryMode()

ctkDICOMBrowser::ImportDirectoryMode ctkDICOMBrowser::importDirectoryMode ( ) const

Get value of ImportDirectoryMode settings.

See also
setImportDirectoryMode(ctkDICOMBrowser::ImportDirectoryMode)

◆ instancesAddedDuringImport()

int ctkDICOMBrowser::instancesAddedDuringImport ( )

◆ onFileIndexed

void ctkDICOMBrowser::onFileIndexed ( const QString &  filePath)
slot

◆ onImportDirectoriesSelected

void ctkDICOMBrowser::onImportDirectoriesSelected ( QStringList  directories)
protectedslot

Import directories.

This is used when user selected one or multiple directories from the Import Dialog.

See also
importDirectories(QString directory, int mode)

◆ onImportDirectory

void ctkDICOMBrowser::onImportDirectory ( QString  directory,
ctkDICOMBrowser::ImportDirectoryMode  mode = ImportDirectoryAddLink 
)
slot

◆ onImportDirectoryComboBoxCurrentIndexChanged

void ctkDICOMBrowser::onImportDirectoryComboBoxCurrentIndexChanged ( int  index)
protectedslot

◆ onInstanceAdded

void ctkDICOMBrowser::onInstanceAdded ( QString  )
slot

◆ onModelSelected

void ctkDICOMBrowser::onModelSelected ( const QItemSelection &  ,
const QItemSelection &   
)
protectedslot

◆ onPatientAdded

void ctkDICOMBrowser::onPatientAdded ( int  ,
QString  ,
QString  ,
QString   
)
slot

slots to capture status updates from the database during an import operation

◆ onPatientsRightClicked

void ctkDICOMBrowser::onPatientsRightClicked ( const QPoint &  point)
protectedslot

Called when a right mouse click is made in the patients table.

◆ onQueryRetrieveFinished

void ctkDICOMBrowser::onQueryRetrieveFinished ( )
protectedslot

To be called when dialog finishes.

◆ onRemoveAction

void ctkDICOMBrowser::onRemoveAction ( )
slot

◆ onRepairAction

void ctkDICOMBrowser::onRepairAction ( )
slot

◆ onSeriesAdded

void ctkDICOMBrowser::onSeriesAdded ( QString  )
slot

◆ onSeriesRightClicked

void ctkDICOMBrowser::onSeriesRightClicked ( const QPoint &  point)
protectedslot

Called when a right mouse click is made in the series table.

◆ onStudiesRightClicked

void ctkDICOMBrowser::onStudiesRightClicked ( const QPoint &  point)
protectedslot

Called when a right mouse click is made in the studies table.

◆ onStudyAdded

void ctkDICOMBrowser::onStudyAdded ( QString  )
slot

◆ onTablesDensityComboBox

void ctkDICOMBrowser::onTablesDensityComboBox ( QString  )
slot

◆ openExportDialog

void ctkDICOMBrowser::openExportDialog ( )
slot

◆ openImportDialog

void ctkDICOMBrowser::openImportDialog ( )
slot

Pop-up file dialog allowing to select and import one or multiple DICOM directories.

The dialog is extented with two additional controls:

  • ImportDirectoryMode combox: Allow user to select "Add Link" or "Copy" mode. Associated settings is stored using key DICOM/ImportDirectoryMode.

◆ openQueryDialog

void ctkDICOMBrowser::openQueryDialog ( )
slot

◆ patientsAddedDuringImport()

int ctkDICOMBrowser::patientsAddedDuringImport ( )

Accessors to status of last directory import operation.

◆ queryRetrieveFinished

void ctkDICOMBrowser::queryRetrieveFinished ( )
signal

Emited when query/retrieve operation has happened.

◆ seriesAddedDuringImport()

int ctkDICOMBrowser::seriesAddedDuringImport ( )

◆ setDatabaseDirectory

void ctkDICOMBrowser::setDatabaseDirectory ( const QString &  directory)
slot

◆ setDisplayImportSummary()

void ctkDICOMBrowser::setDisplayImportSummary ( bool  )

Option to show or not import summary dialog. Since the summary dialog is modal, we give the option of disabling it for batch modes or testing.

◆ setImportDirectoryMode

void ctkDICOMBrowser::setImportDirectoryMode ( ctkDICOMBrowser::ImportDirectoryMode  mode)
slot

Set value of ImportDirectoryMode settings.

Setting the value will update the comboBox found at the bottom of the import dialog.

See also
importDirectoryMode()

◆ setTagsToPrecache()

void ctkDICOMBrowser::setTagsToPrecache ( const QStringList  tags)

See ctkDICOMDatabase for description - these accessors delegate to the corresponding routines of the internal instance of the database.

See also
ctkDICOMDatabase

◆ studiesAddedDuringImport()

int ctkDICOMBrowser::studiesAddedDuringImport ( )

◆ tagsToPrecache()

const QStringList ctkDICOMBrowser::tagsToPrecache ( )

◆ updateDatabaseSchemaIfNeeded()

Q_INVOKABLE void ctkDICOMBrowser::updateDatabaseSchemaIfNeeded ( )

Updates schema of loaded database to match the one coded by the current version of ctkDICOMDatabase. Also provides a dialog box for progress

Member Data Documentation

◆ d_ptr

QScopedPointer<ctkDICOMBrowserPrivate> ctkDICOMBrowser::d_ptr
protected

Definition at line 188 of file ctkDICOMBrowser.h.

Property Documentation

◆ databaseDirectory

QString ctkDICOMBrowser::databaseDirectory
readwrite

Definition at line 1 of file ctkDICOMBrowser.h.

◆ displayImportSummary

bool ctkDICOMBrowser::displayImportSummary
readwrite

Definition at line 1 of file ctkDICOMBrowser.h.

◆ ImportDirectoryMode

Definition at line 1 of file ctkDICOMBrowser.h.

◆ instancesAddedDuringImport

int ctkDICOMBrowser::instancesAddedDuringImport
read

Definition at line 1 of file ctkDICOMBrowser.h.

◆ patientsAddedDuringImport

int ctkDICOMBrowser::patientsAddedDuringImport
read

Definition at line 1 of file ctkDICOMBrowser.h.

◆ seriesAddedDuringImport

int ctkDICOMBrowser::seriesAddedDuringImport
read

Definition at line 1 of file ctkDICOMBrowser.h.

◆ studiesAddedDuringImport

int ctkDICOMBrowser::studiesAddedDuringImport
read

Definition at line 1 of file ctkDICOMBrowser.h.

◆ tagsToPrecache

QStringList ctkDICOMBrowser::tagsToPrecache
readwrite

Definition at line 1 of file ctkDICOMBrowser.h.


The documentation for this class was generated from the following file: