Prechádzať zdrojové kódy

Fixed typo and associated bugs in dicom-sample.sql and ctkDICOMModel.cpp.

Made QR widget properly scale the tree view, added logging to the ctkDICOMModel.
Daniel Blezek 15 rokov pred
rodič
commit
b0514da074

+ 4 - 0
Applications/ctkDICOM/ctkDICOMMain.cpp

@@ -29,11 +29,15 @@
 #include "ctkDICOM.h"
 #include "ctkDICOMModel.h"
 
+// Logger
+#include "ctkLogger.h"
+
 // STD includes
 #include <iostream>
 
 int main(int argc, char** argv)
 {
+  ctkLogger::configure();
   QApplication app(argc, argv);
 
   // set up the database 

+ 1 - 1
Libs/DICOM/Core/Resources/dicom-sample.sql

@@ -2262,7 +2262,7 @@ INSERT INTO "Series" VALUES('1.3.12.2.1107.5.2.31.30287.300000091124150820310000
 INSERT INTO "Series" VALUES('1.3.12.2.1107.5.2.31.30287.30000009112415082031000001903','1.3.12.2.1107.5.2.31.30287.30000009112412540589000000011',101,'2009-11-24','162255.999000','<MPR Range[1]>','','1.3.12.2.1107.5.2.31.30287.1.20091124154153702.0.0.5014',1,'','SE',1,0);
 INSERT INTO "Series" VALUES('1.3.12.2.1107.5.2.31.30287.30000009112412545103000000147','1.3.12.2.1107.5.2.31.30287.30000009112412540589000000011',99,'2009-11-24','170811.702000','PhoenixZIPReport','','',0,'','',0,0);
 INSERT INTO "Series" VALUES('1.3.12.2.1107.5.2.31.30287.30000009112415082031000001080','1.3.12.2.1107.5.2.31.30287.30000009112412540589000000011',100,'2009-11-24','162146.108000','<MPR Range>','','1.3.12.2.1107.5.2.31.30287.1.20091124154153702.0.0.5014',1,'','SE',1,0);
-CREATE TABLE 'Studies' (   'StudyInstanceUID' VARCHAR(255) NOT NULL ,   'PatientsUID' INT NOT NULL ,   'StudyID' VARCHAR(255) NULL ,   'StudyDate' DATE NULL ,   'StudyTime' VARCHAR(20) NULL ,   'AccessionNumber' VARCHAR(255) NULL ,   'ModalitiesInStudy' VARCHAR(255) NULL ,   'InstitutionName' VARCHAR(255) NULL , 'ReferringPhysician' VARCHAR(255) NULL ,  'PerformingPysiciansName' VARCHAR(255) NULL , 'StudyDescription' VARCHAR(255) NULL ,  PRIMARY KEY ('StudyInstanceUID') );
+CREATE TABLE 'Studies' (   'StudyInstanceUID' VARCHAR(255) NOT NULL ,   'PatientsUID' INT NOT NULL ,   'StudyID' VARCHAR(255) NULL ,   'StudyDate' DATE NULL ,   'StudyTime' VARCHAR(20) NULL ,   'AccessionNumber' VARCHAR(255) NULL ,   'ModalitiesInStudy' VARCHAR(255) NULL ,   'InstitutionName' VARCHAR(255) NULL , 'ReferringPhysician' VARCHAR(255) NULL ,  'PerformingPhysiciansName' VARCHAR(255) NULL , 'StudyDescription' VARCHAR(255) NULL ,  PRIMARY KEY ('StudyInstanceUID') );
 INSERT INTO "Studies" VALUES('1.2.826.0.1.3680043.2.1125.1.73379483469717886505187028001198162',14,'123456','2009-01-02','010100.000000','1','','Hospital YYY', 'Unknown','me','None');
 INSERT INTO "Studies" VALUES('1.3.12.2.1107.5.4.5.50096.30000009112417295950800000029',15,'Default StudyID','2009-11-24','143624.000000','','','Hospital XXX', '','you','');
 INSERT INTO "Studies" VALUES('1.3.12.2.1107.5.2.31.30287.30000009112412540589000000011',16,'2','2009-11-24','143836.908000','','','Hospital XXX', 'IORDACHITA','her','Carrino^MR_Overlay');

+ 9 - 2
Libs/DICOM/Core/ctkDICOMModel.cpp

@@ -31,7 +31,9 @@
 
 // ctkDICOM includes
 #include "ctkDICOMModel.h"
+#include "ctkLogger.h"
 
+static ctkLogger logger ( "org.commontk.dicom.DICOMModel" );
 struct Node;
 
 //------------------------------------------------------------------------------
@@ -258,6 +260,7 @@ QString ctkDICOMModelPrivate::generateQuery(const QString& fields, const QString
     {
     res += QString(" ORDER BY ") + this->Sort;
     }
+  logger.debug ( "ctkDICOMModelPrivate::generateQuery: query is: " + res );
   return res;
 }
 
@@ -274,18 +277,22 @@ void ctkDICOMModelPrivate::updateQueries(Node* node)const
     case ctkDICOMModelPrivate::RootType:
       //query = QString("SELECT  FROM ");
       query = this->generateQuery("UID as UID, PatientsName as Name, PatientsAge as Age, PatientsBirthDate as Date, PatientID as \"Subject ID\"","Patients");
+      logger.debug ( "ctkDICOMModelPrivate::updateQueries for Root: query is: " + query );
       break;
     case ctkDICOMModelPrivate::PatientType:
       //query = QString("SELECT  FROM Studies WHERE PatientsUID='%1'").arg(node->UID);
-      query = this->generateQuery("StudyInstanceUID as UID, StudyDescription as Name, ModalitiesInStudy as Scan, StudyDate as Date, AccessionNumber as Number, ReferringPhysician as Institution, ReferringPhysician as Referrer, PerformingPysiciansName as Performer", "Studies",QString("PatientsUID='%1'").arg(node->UID));
+      query = this->generateQuery("StudyInstanceUID as UID, StudyDescription as Name, ModalitiesInStudy as Scan, StudyDate as Date, AccessionNumber as Number, ReferringPhysician as Institution, ReferringPhysician as Referrer, PerformingPhysiciansName as Performer", "Studies",QString("PatientsUID='%1'").arg(node->UID));
+      logger.debug ( "ctkDICOMModelPrivate::updateQueries for Patient: query is: " + query );
       break;
     case ctkDICOMModelPrivate::StudyType:
       //query = QString("SELECT SeriesInstanceUID as UID, SeriesDescription as Name, BodyPartExamined as Scan, SeriesDate as Date, AcquisitionNumber as Number FROM Series WHERE StudyInstanceUID='%1'").arg(node->UID);
       query = this->generateQuery("SeriesInstanceUID as UID, SeriesDescription as Name, BodyPartExamined as Scan, SeriesDate as Date, AcquisitionNumber as Number","Series",QString("StudyInstanceUID='%1'").arg(node->UID));
+      logger.debug ( "ctkDICOMModelPrivate::updateQueries for Study: query is: " + query );
       break;
     case ctkDICOMModelPrivate::SeriesType:
       //query = QString("SELECT Filename as UID, Filename as Name, SeriesInstanceUID as Date FROM Images WHERE SeriesInstanceUID='%1'").arg(node->UID);
-      // query = this->generateQuery("Filename as UID, Filename as Name, SeriesInstanceUID as Date", "Images", QString("SeriesInstanceUID='%1'").arg(node->UID));
+      query = this->generateQuery("Filename as UID, Filename as Name, SeriesInstanceUID as Date", "Images", QString("SeriesInstanceUID='%1'").arg(node->UID));
+      logger.debug ( "ctkDICOMModelPrivate::updateQueries for Series: query is: " + query );
       break;
     case ctkDICOMModelPrivate::ImageType:
       break;

+ 13 - 12
Libs/DICOM/Widgets/Resources/UI/ctkDICOMQueryRetrieveWidget.ui

@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>743</width>
-    <height>793</height>
+    <width>762</width>
+    <height>769</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -129,19 +129,20 @@
       <property name="enabled">
        <bool>true</bool>
       </property>
+      <property name="sizePolicy">
+       <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+        <horstretch>0</horstretch>
+        <verstretch>0</verstretch>
+       </sizepolicy>
+      </property>
       <attribute name="title">
        <string>Local</string>
       </attribute>
-      <widget class="QTreeView" name="treeView">
-       <property name="geometry">
-        <rect>
-         <x>20</x>
-         <y>60</y>
-         <width>719</width>
-         <height>224</height>
-        </rect>
-       </property>
-      </widget>
+      <layout class="QHBoxLayout" name="horizontalLayout_2">
+       <item>
+        <widget class="QTreeView" name="treeView"/>
+       </item>
+      </layout>
      </widget>
     </widget>
    </item>