diff --git a/src/recon/PACSSettingsDataModel.cpp b/src/recon/PACSSettingsDataModel.cpp new file mode 100644 index 0000000..dfff461 --- /dev/null +++ b/src/recon/PACSSettingsDataModel.cpp @@ -0,0 +1,62 @@ +#include "PACSSettingsDataModel.h" + +QVariant PACSSettingsDataModel::data(const QModelIndex &index, int role) const +{ + if (!index.isValid()) return QVariant(); + if (role == Qt::TextAlignmentRole) { + return Qt::AlignCenter; + } + if (role == Qt::DisplayRole || role == Qt::EditRole ) + { + auto item = mData[index.row()]; + switch (index.column()) + { + case 0: + return QString(item.AETitle.data()); + case 1: + return QString(item.ServerIP.data()); + case 2: + return item.Port; + case 3: + return QString(item.ServerAETitle.data()); + case 4: + return item.StorageCommitment?tr("Yes"):tr("No"); + default: + break; + } + } + return QVariant(); +} +int PACSSettingsDataModel::rowCount(const QModelIndex &parent) const +{ + return mData.length(); +} + +int PACSSettingsDataModel::columnCount(const QModelIndex &parent) const +{ + return 5; +} + +QVariant PACSSettingsDataModel::headerData(int section, Qt::Orientation orientation, int role) const +{ + if(role != Qt::DisplayRole) + return QVariant(); + if(orientation == Qt::Horizontal) + return mHeaderStrings.at(section); + return QVariant(); +} + +PACSSettingsDataModel::PACSSettingsDataModel(QObject *parent) +{ + mHeaderStrings<