105 lines
7.3 KiB
C++
Executable File
105 lines
7.3 KiB
C++
Executable File
/**
|
|
* @RDE_HEADER@
|
|
* ParticipantManagement - PpmComboBox
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
* Created by Patric Karwat, SLSE, 2016-09-12
|
|
*/
|
|
|
|
#include "ppm_combobox.h"
|
|
#include <QComboBox>
|
|
#include <ParticipantManagement/ppm_translation.h>
|
|
|
|
namespace ParticipantManagement
|
|
{
|
|
bool PpmComboBox::fill(QComboBox *cbx, ComboBoxType type,
|
|
const std::shared_ptr<Interface::Dtc> &dtc)
|
|
{
|
|
const QVariant curData = cbx->currentData();
|
|
|
|
QSignalBlocker block(cbx);
|
|
cbx->clear();
|
|
|
|
switch (type)
|
|
{
|
|
case ComboBoxType::EquipmentType:
|
|
{
|
|
cbx->addItem(QObject::tr("NONE"), 0);
|
|
const QMap<qint32, EquipmentType> 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
|