/** * @RDE_HEADER@ * HMI Plugin for ParticipantManagement - Party Overview Model * $Id$ * $HeadURL$ * $Author$ * Created by Patric Karwat, SLSE, 2016-11-11 */ #include "ppm_party_model.h" namespace ParticipantManagement { //--------------------------------- // PartyModel //--------------------------------- PartyModel::PartyModel(QObject *parent) : LtsWidgets::LtsAbstractTableModel({tr("Id"), tr("Name")}, parent) , m_dtc(nullptr) , m_logger(getLogger("PartyModel")) {} bool PartyModel::initModel(const std::shared_ptr &dtc) { if (!dtc) return false; m_dtc = dtc; // Insert Operator PartyData partyData; partyData.id = -1; partyData.name = tr("Operator"); insertRow(partyData); // Insert Parties auto cb = [this](const ParticipantManagement::Party &p) { insertRow(PartyData(p)); }; m_dtc->partys(cb); return true; } QVariant PartyModel::data(const QModelIndex &index, int role) const { if (role != Qt::DisplayRole || !indexIsValid(index)) return QVariant(); const PartyData &party = m_vecData.at(index.row()); switch (index.column()) { case Id: return party.id; case Name: return party.name; } return QVariant(); } } // namespace ParticipantManagement