/** * @RDE_HEADER@ * ParticipantManagement - PpmComboBox * $Id$ * $HeadURL$ * $Author$ * Created by Patric Karwat, SLSE, 2016-09-12 */ #include "ppm_combobox.h" #include #include namespace ParticipantManagement { bool PpmComboBox::fill(QComboBox *cbx, ComboBoxType type, const std::shared_ptr &dtc) { const QVariant curData = cbx->currentData(); QSignalBlocker block(cbx); cbx->clear(); switch (type) { case ComboBoxType::EquipmentType: { cbx->addItem(QObject::tr("NONE"), 0); const QMap eqTypes = dtc->equipmentTypes(); for (const EquipmentType &eqType : eqTypes) { if (eqType.id() <= 0) continue; if (eqType.deletedInWms()) cbx->addItem(QString::fromStdString(eqType.name()) + QObject::tr("(deleted)"), eqType.id()); else cbx->addItem(QString::fromStdString(eqType.name()), eqType.id()); } break; } case ComboBoxType::Role: { cbx->addItem(ParticipantManagement::toString(ParticipantManagement::Role::Unknown), ParticipantManagement::Role::Unknown); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::Role::Friend), ParticipantManagement::Role::Friend); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::Role::Neutral), ParticipantManagement::Role::Neutral); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::Role::Enemy), ParticipantManagement::Role::Enemy); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::Role::Pending), ParticipantManagement::Role::Pending); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::Role::AssumedFriend), ParticipantManagement::Role::AssumedFriend); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::Role::Suspect), ParticipantManagement::Role::Suspect); break; } case ComboBoxType::HlaForceIdentifier: { cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Other), ParticipantManagement::HlaForceIdentifierEnum::Other); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_1), ParticipantManagement::HlaForceIdentifierEnum::Friendly_1); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_1), ParticipantManagement::HlaForceIdentifierEnum::Opposing_1); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_1), ParticipantManagement::HlaForceIdentifierEnum::Neutral_1); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_2), ParticipantManagement::HlaForceIdentifierEnum::Friendly_2); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_2), ParticipantManagement::HlaForceIdentifierEnum::Opposing_2); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_2), ParticipantManagement::HlaForceIdentifierEnum::Neutral_2); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_3), ParticipantManagement::HlaForceIdentifierEnum::Friendly_3); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_3), ParticipantManagement::HlaForceIdentifierEnum::Opposing_3); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_3), ParticipantManagement::HlaForceIdentifierEnum::Neutral_3); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_4), ParticipantManagement::HlaForceIdentifierEnum::Friendly_4); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_4), ParticipantManagement::HlaForceIdentifierEnum::Opposing_4); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_4), ParticipantManagement::HlaForceIdentifierEnum::Neutral_4); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_5), ParticipantManagement::HlaForceIdentifierEnum::Friendly_5); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_5), ParticipantManagement::HlaForceIdentifierEnum::Opposing_5); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_5), ParticipantManagement::HlaForceIdentifierEnum::Neutral_5); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_6), ParticipantManagement::HlaForceIdentifierEnum::Friendly_6); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_6), ParticipantManagement::HlaForceIdentifierEnum::Opposing_6); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_6), ParticipantManagement::HlaForceIdentifierEnum::Neutral_6); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_7), ParticipantManagement::HlaForceIdentifierEnum::Friendly_7); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_7), ParticipantManagement::HlaForceIdentifierEnum::Opposing_7); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_7), ParticipantManagement::HlaForceIdentifierEnum::Neutral_7); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_8), ParticipantManagement::HlaForceIdentifierEnum::Friendly_8); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_8), ParticipantManagement::HlaForceIdentifierEnum::Opposing_8); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_8), ParticipantManagement::HlaForceIdentifierEnum::Neutral_8); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_9), ParticipantManagement::HlaForceIdentifierEnum::Friendly_9); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_9), ParticipantManagement::HlaForceIdentifierEnum::Opposing_9); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_9), ParticipantManagement::HlaForceIdentifierEnum::Neutral_9); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Friendly_10), ParticipantManagement::HlaForceIdentifierEnum::Friendly_10); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Opposing_10), ParticipantManagement::HlaForceIdentifierEnum::Opposing_10); cbx->addItem(ParticipantManagement::toString(ParticipantManagement::HlaForceIdentifierEnum::Neutral_10), ParticipantManagement::HlaForceIdentifierEnum::Neutral_10); break; } } if (curData.isValid() && (cbx->findData(curData) != -1)) { cbx->setCurrentIndex(cbx->findData(curData)); } else if(cbx->count()) cbx->setCurrentIndex(0); return cbx->count() > 0; } } // namespace ParticipantManagement