/** * @RDE_HEADER@ * Convert DSS enumerations to translatable strings * $Id$ * $HeadURL$ * $Author$ */ #include "pdm_to_string.h" #include "pdm_translation.h" #include namespace ProjectDataManagement { // // VulnerabilityState + VulnerabilityClass // static QString toStringBuilding(VulnerabilityState vs) { switch (vs) { #ifdef ETS_MODE case VulnerabilityState::VulnerabilityState_CombatReady: return QCoreApplication::translate("ProjectDataManagement", "Ready", "VulnerabilityStateBuilding"); case VulnerabilityState::VulnerabilityState_CatastrophicKill: return QCoreApplication::translate("ProjectDataManagement", "Damaged", "VulnerabilityStateBuilding"); #else case VulnerabilityState::VulnerabilityState_CombatReady: return QCoreApplication::translate("ProjectDataManagement", "Combat Ready", "VulnerabilityStateBuilding"); case VulnerabilityState::VulnerabilityState_CatastrophicKill: return QCoreApplication::translate("ProjectDataManagement", "CatastrophicKill", "VulnerabilityStateBuilding"); #endif default: break; } return QCoreApplication::translate("ProjectDataManagement", "Unknown (%1)", "VulnerabilityState").arg(static_cast(vs)); } static QString toStringVehicle(VulnerabilityState vs) { switch (vs) { #ifdef ETS_MODE case VulnerabilityState::VulnerabilityState_CombatReady: return QCoreApplication::translate("ProjectDataManagement", "Ready / OK", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_LightDamage: return QCoreApplication::translate("ProjectDataManagement", "Communication Damage", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_HeavyDamage: return QCoreApplication::translate("ProjectDataManagement", "Main Function Damage", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_MobilityKill: return QCoreApplication::translate("ProjectDataManagement", "Mobility Lost", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_CatastrophicKill: return QCoreApplication::translate("ProjectDataManagement", "Fully Damaged", "VulnerabilityStateVehicle"); default: break; #else case VulnerabilityState::VulnerabilityState_LightDamage: return QCoreApplication::translate("ProjectDataManagement", "Comms Damaged", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_MediumDamage: return QCoreApplication::translate("ProjectDataManagement", "Veh Body Damaged", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_HeavyDamage: return QCoreApplication::translate("ProjectDataManagement", "Main Funct Damaged", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_MobilityKill: return QCoreApplication::translate("ProjectDataManagement", "Mobility Kill", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_VisibleMobilityKill: return QCoreApplication::translate("ProjectDataManagement", "Visible Mobility Kill", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_WeaponSystemDamage: return QCoreApplication::translate("ProjectDataManagement", "Wpn / Turret Damaged", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_VisibleWeaponSystemDamage: return QCoreApplication::translate("ProjectDataManagement", "Visible Wpn / Turret Damaged", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_CatastrophicKill: return QCoreApplication::translate("ProjectDataManagement", "Catastrophic Kill", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_CombatReady: case VulnerabilityState::VulnerabilityState_NoChange: case VulnerabilityState::VulnerabilityState_TemporarySeverance: case VulnerabilityState::VulnerabilityState_NearMiss: case VulnerabilityState::VulnerabilityState_HitWithNoEffect: case VulnerabilityState::VulnerabilityState_VulnerabilityBitsChanged: case VulnerabilityState::VulnerabilityState_NContamination: case VulnerabilityState::VulnerabilityState_BContamination: case VulnerabilityState::VulnerabilityState_CContamination: case VulnerabilityState::VulnerabilityState_NotReady: // Internal case VulnerabilityState::VulnerabilityState_Reserved: // Internal break; // use common translation from toString() #endif } // Fallback return toString(vs); } static QString toStringSoldier(VulnerabilityState vs) { switch (vs) { #ifdef ETS_MODE case VulnerabilityState::VulnerabilityState_CombatReady: return QCoreApplication::translate("ProjectDataManagement", "Ready / OK", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_LightDamage: return QCoreApplication::translate("ProjectDataManagement", "lightly injured", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_MediumDamage: return QCoreApplication::translate("ProjectDataManagement", "moderatly injured", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_HeavyDamage: return QCoreApplication::translate("ProjectDataManagement", "seriously injured", "VulnerabilityStateVehicle"); case VulnerabilityState::VulnerabilityState_CatastrophicKill: return QCoreApplication::translate("ProjectDataManagement", "dead", "VulnerabilityStateVehicle"); default: break; #else case VulnerabilityState::VulnerabilityState_LightDamage: return QCoreApplication::translate("ProjectDataManagement", "Wounded Walking", "VulnerabilityStateSoldier"); case VulnerabilityState::VulnerabilityState_MediumDamage: return QCoreApplication::translate("ProjectDataManagement", "Wounded Sitting", "VulnerabilityStateSoldier"); case VulnerabilityState::VulnerabilityState_HeavyDamage: return QCoreApplication::translate("ProjectDataManagement", "Wounded Laying", "VulnerabilityStateSoldier"); case VulnerabilityState::VulnerabilityState_CatastrophicKill: return QCoreApplication::translate("ProjectDataManagement", "Catastrophic Kill / Killed", "VulnerabilityStateSoldier"); case VulnerabilityState::VulnerabilityState_WeaponSystemDamage: return QCoreApplication::translate("ProjectDataManagement", "Weapon Damage", "VulnerabilityStateSoldier"); case VulnerabilityState::VulnerabilityState_VisibleWeaponSystemDamage: return QCoreApplication::translate("ProjectDataManagement", "Visible Weapon Damage", "VulnerabilityStateSoldier"); case VulnerabilityState::VulnerabilityState_CombatReady: case VulnerabilityState::VulnerabilityState_TemporarySeverance: case VulnerabilityState::VulnerabilityState_NearMiss: case VulnerabilityState::VulnerabilityState_HitWithNoEffect: case VulnerabilityState::VulnerabilityState_VulnerabilityBitsChanged: case VulnerabilityState::VulnerabilityState_NContamination: case VulnerabilityState::VulnerabilityState_BContamination: case VulnerabilityState::VulnerabilityState_CContamination: case VulnerabilityState::VulnerabilityState_NoChange: break; // use common translation from toString() // those should not happen ... case VulnerabilityState::VulnerabilityState_MobilityKill: case VulnerabilityState::VulnerabilityState_VisibleMobilityKill: case VulnerabilityState::VulnerabilityState_NotReady: // Internal case VulnerabilityState::VulnerabilityState_Reserved: // Internal break; #endif } return toString(vs); } QString toString(VulnerabilityState vs, VulnerabilityClass vc) { switch (vc) { case VulnerabilityClass::VulnerabilityClass_Unknown: case VulnerabilityClass::VulnerabilityClass_WtdDamages: case VulnerabilityClass::VulnerabilityClass_WtdInjuries: return toString(vs); case VulnerabilityClass::VulnerabilityClass_BuildingDamages: return toStringBuilding(vs); case VulnerabilityClass::VulnerabilityClass_VehicleDamages: return toStringVehicle(vs); case VulnerabilityClass::VulnerabilityClass_SoldierInjuries: return toStringSoldier(vs); } return QCoreApplication::translate("ProjectDataManagement", "Unknown (%1)", "VulnerabilityState").arg(static_cast(vs)); } } // namespace ProjectDataManagement