|
@@ -23,8 +23,8 @@
|
|
|
#include "ui_ctkDICOMTableView.h"
|
|
|
|
|
|
// Qt includes
|
|
|
-#include <QSqlQueryModel>
|
|
|
#include <QSortFilterProxyModel>
|
|
|
+#include <QSqlQueryModel>
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
|
class ctkDICOMTableViewPrivate : public Ui_ctkDICOMTableView
|
|
@@ -64,6 +64,8 @@ ctkDICOMTableViewPrivate::ctkDICOMTableViewPrivate(ctkDICOMTableView &obj)
|
|
|
this->dicomSQLFilterModel = new QSortFilterProxyModel();
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
ctkDICOMTableViewPrivate::ctkDICOMTableViewPrivate(ctkDICOMTableView &obj, ctkDICOMDatabase* db)
|
|
|
: q_ptr(&obj)
|
|
|
, dicomDatabase(db)
|
|
@@ -71,6 +73,8 @@ ctkDICOMTableViewPrivate::ctkDICOMTableViewPrivate(ctkDICOMTableView &obj, ctkDI
|
|
|
this->dicomSQLFilterModel = new QSortFilterProxyModel();
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
ctkDICOMTableViewPrivate::~ctkDICOMTableViewPrivate()
|
|
|
{
|
|
|
delete this->dicomSQLFilterModel;
|
|
@@ -94,6 +98,8 @@ void ctkDICOMTableViewPrivate::init()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
void ctkDICOMTableViewPrivate::setUpTableView()
|
|
|
{
|
|
|
Q_Q(ctkDICOMTableView);
|
|
@@ -119,6 +125,8 @@ void ctkDICOMTableViewPrivate::setUpTableView()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
//Temporay solution to hide UID columns
|
|
|
void ctkDICOMTableViewPrivate::hideUIDColumns()
|
|
|
{
|
|
@@ -134,6 +142,8 @@ void ctkDICOMTableViewPrivate::hideUIDColumns()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
QStringList ctkDICOMTableViewPrivate::uidsForAllRows()
|
|
|
{
|
|
|
QAbstractItemModel* tableModel = this->tblDicomDatabaseView->model();
|
|
@@ -170,6 +180,8 @@ ctkDICOMTableView::ctkDICOMTableView(QWidget *parent, QString queryTableName)
|
|
|
d->lblTableName->setText(queryTableName);
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
ctkDICOMTableView::ctkDICOMTableView(ctkDICOMDatabase* ctkDicomDataBase, QWidget *parent, QString queryTableName)
|
|
|
: Superclass(parent)
|
|
|
, d_ptr(new ctkDICOMTableViewPrivate(*this))
|
|
@@ -180,10 +192,14 @@ ctkDICOMTableView::ctkDICOMTableView(ctkDICOMDatabase* ctkDicomDataBase, QWidget
|
|
|
d->init();
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
ctkDICOMTableView::~ctkDICOMTableView()
|
|
|
{
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
void ctkDICOMTableView::setCTKDicomDataBase(ctkDICOMDatabase *dicomDatabase)
|
|
|
{
|
|
|
Q_D(ctkDICOMTableView);
|
|
@@ -191,6 +207,8 @@ void ctkDICOMTableView::setCTKDicomDataBase(ctkDICOMDatabase *dicomDatabase)
|
|
|
d->setUpTableView();
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
void ctkDICOMTableView::setQueryTableName(const QString &tableName)
|
|
|
{
|
|
|
Q_D(ctkDICOMTableView);
|
|
@@ -198,12 +216,16 @@ void ctkDICOMTableView::setQueryTableName(const QString &tableName)
|
|
|
d->lblTableName->setText(tableName);
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
void ctkDICOMTableView::setQueryForeignKey(const QString &foreignKey)
|
|
|
{
|
|
|
Q_D(ctkDICOMTableView);
|
|
|
d->queryForeignKey = foreignKey;
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
void ctkDICOMTableView::onSelectionChanged()
|
|
|
{
|
|
|
Q_D(ctkDICOMTableView);
|
|
@@ -218,12 +240,16 @@ void ctkDICOMTableView::onSelectionChanged()
|
|
|
emit queryChanged(uids);
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
void ctkDICOMTableView::onDatabaseChanged()
|
|
|
{
|
|
|
Q_D(ctkDICOMTableView);
|
|
|
setQuery();
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
void ctkDICOMTableView::onUpdateQuery(const QStringList& uids)
|
|
|
{
|
|
|
Q_D(ctkDICOMTableView);
|
|
@@ -234,6 +260,8 @@ void ctkDICOMTableView::onUpdateQuery(const QStringList& uids)
|
|
|
emit queryChanged(newUIDS);
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
void ctkDICOMTableView::onFilterChanged()
|
|
|
{
|
|
|
Q_D(ctkDICOMTableView);
|
|
@@ -242,6 +270,8 @@ void ctkDICOMTableView::onFilterChanged()
|
|
|
emit queryChanged(uids);
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
+
|
|
|
void ctkDICOMTableView::setQuery(const QStringList &uids)
|
|
|
{
|
|
|
Q_D(ctkDICOMTableView);
|
|
@@ -260,6 +290,7 @@ void ctkDICOMTableView::setQuery(const QStringList &uids)
|
|
|
d->dicomSQLModel.setQuery(query, d->dicomDatabase->database());
|
|
|
}
|
|
|
|
|
|
+//------------------------------------------------------------------------------
|
|
|
|
|
|
QStringList ctkDICOMTableView::currentSelection()
|
|
|
{
|