/** * @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 (static_cast(vs)) { #ifdef ETS_MODE case 1: return QCoreApplication::translate("ProjectDataManagement", "Ready", "VulnerabilityStateBuilding"); case 3: return QCoreApplication::translate("ProjectDataManagement", "Damaged", "VulnerabilityStateBuilding"); #else case 1: return QCoreApplication::translate("ProjectDataManagement", "Combat Ready", "VulnerabilityStateBuilding"); case 3: 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 (static_cast(vs)) { #ifdef ETS_MODE case 1: return QCoreApplication::translate("ProjectDataManagement", "Ready / OK", "VulnerabilityStateVehicle"); case 2: return QCoreApplication::translate("ProjectDataManagement", "Communication Damage", "VulnerabilityStateVehicle"); case 3: return QCoreApplication::translate("ProjectDataManagement", "Main Function Damage", "VulnerabilityStateVehicle"); case 4: return QCoreApplication::translate("ProjectDataManagement", "Mobility Lost", "VulnerabilityStateVehicle"); case 5: return QCoreApplication::translate("ProjectDataManagement", "Fully Damaged", "VulnerabilityStateVehicle"); default: break; #else case 2: return QCoreApplication::translate("ProjectDataManagement", "Comms Damaged", "VulnerabilityStateVehicle"); case 3: return QCoreApplication::translate("ProjectDataManagement", "Veh Body Damaged", "VulnerabilityStateVehicle"); case 4: return QCoreApplication::translate("ProjectDataManagement", "Main Funct Damaged", "VulnerabilityStateVehicle"); case 5: return QCoreApplication::translate("ProjectDataManagement", "Mobility Kill", "VulnerabilityStateVehicle"); case 6: return QCoreApplication::translate("ProjectDataManagement", "Visible Mobility Kill", "VulnerabilityStateVehicle"); case 7: return QCoreApplication::translate("ProjectDataManagement", "Wpn / Turret Damaged", "VulnerabilityStateVehicle"); case 8: return QCoreApplication::translate("ProjectDataManagement", "Visible Wpn / Turret Damaged", "VulnerabilityStateVehicle"); case 9: return QCoreApplication::translate("ProjectDataManagement", "Catastrophic Kill", "VulnerabilityStateVehicle"); case 1: case 0: case 10: case 11: case 12: case 13: case 14: case 15: case 16: case 17: break; // use common translation from toString() #endif } // Fallback return toString(vs); } static QString toStringSoldier(VulnerabilityState vs) { switch (static_cast(vs)) { #ifdef ETS_MODE case 1: return QCoreApplication::translate("ProjectDataManagement", "Ready / OK", "VulnerabilityStateVehicle"); case 2: return QCoreApplication::translate("ProjectDataManagement", "lightly injured", "VulnerabilityStateVehicle"); case 3: return QCoreApplication::translate("ProjectDataManagement", "moderatly injured", "VulnerabilityStateVehicle"); case 4: return QCoreApplication::translate("ProjectDataManagement", "seriously injured", "VulnerabilityStateVehicle"); case 5: return QCoreApplication::translate("ProjectDataManagement", "dead", "VulnerabilityStateVehicle"); default: break; #else case 2: return QCoreApplication::translate("ProjectDataManagement", "Wounded Walking", "VulnerabilityStateSoldier"); case 3: return QCoreApplication::translate("ProjectDataManagement", "Wounded Sitting", "VulnerabilityStateSoldier"); case 4: return QCoreApplication::translate("ProjectDataManagement", "Wounded Laying", "VulnerabilityStateSoldier"); case 5: return QCoreApplication::translate("ProjectDataManagement", "Catastrophic Kill / Killed", "VulnerabilityStateSoldier"); case 7: return QCoreApplication::translate("ProjectDataManagement", "Weapon Damage", "VulnerabilityStateSoldier"); case 8: return QCoreApplication::translate("ProjectDataManagement", "Visible Weapon Damage", "VulnerabilityStateSoldier"); case 1: case 10: case 11: case 12: case 13: case 14: case 15: case 16: case 4: case 6: case 0: case 17: break; // use common translation from toString() // those should not happen ... #endif } return toString(vs); } QString toString(VulnerabilityState vs) { switch (static_cast(vs)) { case 0: return QCoreApplication::translate("ProjectDataManagement", "Unknown", "VulnerabilityState"); case 1: return QCoreApplication::translate("ProjectDataManagement", "Normal", "VulnerabilityState"); case 2: return QCoreApplication::translate("ProjectDataManagement", "Warning", "VulnerabilityState"); case 3: return QCoreApplication::translate("ProjectDataManagement", "Critical", "VulnerabilityState"); default: break; } return QCoreApplication::translate("ProjectDataManagement", "Unknown (%1)", "VulnerabilityState").arg(static_cast(vs)); } QString toString(VulnerabilityState vs, VulnerabilityClass vc) { switch (static_cast(vc)) { case 0: // Unknown case 1: // WtdDamages case 2: // WtdInjuries return toString(vs); case 3: // BuildingDamages return toStringBuilding(vs); case 4: // VehicleDamages return toStringVehicle(vs); case 5: // SoldierInjuries return toStringSoldier(vs); } return QCoreApplication::translate("ProjectDataManagement", "Unknown (%1)", "VulnerabilityState").arg(static_cast(vs)); } } // namespace ProjectDataManagement