Quellcode durchsuchen

Display formatted person name, to remove internal delimeters

Remove ^ characters and display as first, middle, last, suffix.

This uses the dcmtk standard function to do formatting.  If we want,
for example, last, first, middle, suffix we would need to write
our own method.
Steve Pieper vor 12 Jahren
Ursprung
Commit
45e42b277d
1 geänderte Dateien mit 11 neuen und 0 gelöschten Zeilen
  1. 11 0
      Libs/DICOM/Core/ctkDICOMModel.cpp

+ 11 - 0
Libs/DICOM/Core/ctkDICOMModel.cpp

@@ -29,6 +29,9 @@
 #include <QTime>
 #include <QDebug>
 
+// dcmtk includes
+#include "dcvrpn.h"
+
 // ctkDICOMCore includes
 #include "ctkDICOMModel.h"
 #include "ctkLogger.h"
@@ -506,6 +509,14 @@ QVariant ctkDICOMModel::data ( const QModelIndex & dataIndex, int role ) const
       return QString("No description");
     }
   }
+
+  if (columnName.compare("Name")==0)
+  {
+    OFString formattedName;
+    DcmPersonName::getFormattedNameFromString(OFString(dataValue.toString().toStdString().c_str()), formattedName);
+    return QString(formattedName.c_str());
+  }
+
   return dataValue;
 }