1
0
Fork 0

Launcher: fix L10N issues found by Michael D

Address parts of the issues mentioned in:
https://sourceforge.net/p/flightgear/codetickets/2386/
This commit is contained in:
Automatic Release Builder 2020-10-29 21:07:46 +00:00 committed by James Turner
parent 29d171e73a
commit 6d2f1d33d8
4 changed files with 51 additions and 41 deletions

View file

@ -1042,24 +1042,25 @@ void LocationController::setNavRadioOption()
}
}
QString compassPointFromHeading(int heading)
QString LocationController::compassPointFromHeading(int heading) const
{
const int labelArc = 360 / 8;
heading += (labelArc >> 1);
SG_NORMALIZE_RANGE(heading, 0, 359);
//
switch (heading / labelArc) {
case 0: return "N";
case 1: return "NE";
case 2: return "E";
case 3: return "SE";
case 4: return "S";
case 5: return "SW";
case 6: return "W";
case 7: return "NW";
case 0: return tr("N");
case 1: return tr("NE");
case 2: return tr("E");
case 3: return tr("SE");
case 4: return tr("S");
case 5: return tr("SW");
case 6: return tr("W");
case 7: return tr("NW");
}
return QString();
return {};
}
QString LocationController::description() const
@ -1112,7 +1113,7 @@ QString LocationController::description() const
} else if (m_useAvailableParking) {
locationOnAirport = tr("at an available parking position");
} else if (onRunway) {
QString runwayName = QString("runway %1").arg(QString::fromStdString(m_detailLocation->ident()));
QString runwayName = tr("runway %1").arg(QString::fromStdString(m_detailLocation->ident()));
if (m_onFinal) {
locationOnAirport = tr("on %2-mile final to %1").arg(runwayName).arg(offsetNm);

View file

@ -237,6 +237,8 @@ private:
void applyAirspeed();
void applyOnFinal();
QString compassPointFromHeading(int heading) const;
NavaidSearchModel* m_searchModel = nullptr;
CarriersLocationModel* m_carriersModel = nullptr;

View file

@ -30,18 +30,19 @@
#include <QDoubleValidator>
#include <QDataStream>
#include <QDebug>
#include <QGuiApplication>
namespace
{
struct UnitData
{
UnitData(QString sn, QString ln, QString metrics, bool pfx = false) :
UnitData(const char* sn, const char* ln, QString metrics, bool pfx = false) :
shortName(sn), longName(ln),
maxTextForMetrics(metrics),
isPrefix(pfx) {}
UnitData(QString sn, QString ln,
UnitData(const char* sn, const char* ln,
QString metrics,
bool pfx,
double min, double max,
@ -56,8 +57,8 @@ struct UnitData
decimals(dps)
{}
QString shortName;
QString longName;
const char* shortName;
const char* longName;
QString maxTextForMetrics;
bool isPrefix = false;
bool valueWraps = false;
@ -69,23 +70,23 @@ struct UnitData
std::vector<UnitData> static_unitData = {
{ "", "", "" }, // noUnits
{ "ft", "feet above sea-level (MSL)", "000000", false, -2000, 180000, 50},
{ "ft AGL", "feet above ground level (AGL)", "000000", false, 0, 180000, 50},
{ "ft above field", "feet above airfield", "000000", false, 0, 180000, 50},
{ "FL", "Flight-level", "000", true /* prefix */, 0.0, 500.0, 5.0},
{ "m", "meters above sea-level (MSL)", "000000", false, -500, 100000, 50},
{ "kts", "Knots", "9999", false, 0, 999999, 10.0},
{ "M", "Mach", "00.000", true /* prefix */, 0.0, 99.0, 0.05, false /* no wrap */, 3 /* decimal places */},
{ "KM/H", "Kilometers/hour", "9999", false, 0, 999999, 10.0},
{ "°True", "degrees true", "000", false, 0, 359, 5.0, true /* wraps */},
{ "°Mag", "degrees magnetic", "000", false, 0, 359, 5.0, true /* wraps */},
{ "UTC", "Universal coordinated time", ""},
{ "Local", "Local time", ""},
{ "Nm", "Nautical miles", "00000", false, 0, 999999, 1.0, false /* no wrap */, 1 /* decimal places */},
{ "Km", "Kilometers", "00000", false, 0, 999999, 1.0, false /* no wrap */, 1 /* decimal places */},
{ QT_TRANSLATE_NOOP("UnitsModel", "ft"), QT_TRANSLATE_NOOP("UnitsModel", "feet above sea-level (MSL)"), "000000", false, -2000, 180000, 50},
{ QT_TRANSLATE_NOOP("UnitsModel", "ft AGL"), QT_TRANSLATE_NOOP("UnitsModel", "feet above ground level (AGL)"), "000000", false, 0, 180000, 50},
{ QT_TRANSLATE_NOOP("UnitsModel", "ft above field"), QT_TRANSLATE_NOOP("UnitsModel", "feet above airfield"), "000000", false, 0, 180000, 50},
{ QT_TRANSLATE_NOOP("UnitsModel", "FL"), QT_TRANSLATE_NOOP("UnitsModel", "Flight-level"), "000", true /* prefix */, 0.0, 500.0, 5.0},
{ QT_TRANSLATE_NOOP("UnitsModel", "m"), QT_TRANSLATE_NOOP("UnitsModel", "meters above sea-level (MSL)"), "000000", false, -500, 100000, 50},
{ QT_TRANSLATE_NOOP("UnitsModel", "kts"), QT_TRANSLATE_NOOP("UnitsModel", "Knots"), "9999", false, 0, 999999, 10.0},
{ QT_TRANSLATE_NOOP("UnitsModel", "M"), QT_TRANSLATE_NOOP("UnitsModel", "Mach"), "00.000", true /* prefix */, 0.0, 99.0, 0.05, false /* no wrap */, 3 /* decimal places */},
{ QT_TRANSLATE_NOOP("UnitsModel", "KM/H"), QT_TRANSLATE_NOOP("UnitsModel", "Kilometers/hour"), "9999", false, 0, 999999, 10.0},
{ QT_TRANSLATE_NOOP("UnitsModel", "°True"), QT_TRANSLATE_NOOP("UnitsModel", "degrees true"), "000", false, 0, 359, 5.0, true /* wraps */},
{ QT_TRANSLATE_NOOP("UnitsModel", "°Mag"), QT_TRANSLATE_NOOP("UnitsModel", "degrees magnetic"), "000", false, 0, 359, 5.0, true /* wraps */},
{ QT_TRANSLATE_NOOP("UnitsModel", "UTC"), QT_TRANSLATE_NOOP("UnitsModel", "Universal coordinated time"), ""},
{ QT_TRANSLATE_NOOP("UnitsModel", "Local"), QT_TRANSLATE_NOOP("UnitsModel", "Local time"), ""},
{ QT_TRANSLATE_NOOP("UnitsModel", "Nm"), QT_TRANSLATE_NOOP("UnitsModel", "Nautical miles"), "00000", false, 0, 999999, 1.0, false /* no wrap */, 1 /* decimal places */},
{ QT_TRANSLATE_NOOP("UnitsModel", "Km"), QT_TRANSLATE_NOOP("UnitsModel", "Kilometers"), "00000", false, 0, 999999, 1.0, false /* no wrap */, 1 /* decimal places */},
{ "MHz", "MHz", "00000", false, 105, 140, 0.025, false /* no wrap */, 3 /* decimal places */},
{ "KHz", "KHz", "00000", false, 200, 400, 1.0, false /* no wrap */, 0 /* decimal places */}
{ QT_TRANSLATE_NOOP("UnitsModel", "MHz"), QT_TRANSLATE_NOOP("UnitsModel", "MHz"), "00000", false, 105, 140, 0.025, false /* no wrap */, 3 /* decimal places */},
{ QT_TRANSLATE_NOOP("UnitsModel", "KHz"), QT_TRANSLATE_NOOP("UnitsModel", "KHz"), "00000", false, 200, 400, 1.0, false /* no wrap */, 0 /* decimal places */}
};
@ -115,6 +116,8 @@ const int UnitValueWrapsRole = Qt::UserRole + 7;
UnitsModel::UnitsModel()
{
m_enabledUnits = static_modeData.at(m_mode);
}
@ -133,8 +136,12 @@ QVariant UnitsModel::data(const QModelIndex &index, int role) const
const UnitData& ud = static_unitData.at(u);
switch (role) {
case Qt::DisplayRole: return ud.shortName;
case UnitLongNameRole: return ud.longName;
case Qt::DisplayRole:
return qApp->translate("UnitsModel", ud.shortName);
case UnitLongNameRole:
return qApp->translate("UnitsModel", ud.longName);
case UnitIsPrefixRole: return ud.isPrefix;
case UnitMinValueRole: return ud.minValue;
case UnitMaxValueRole: return ud.maxValue;
@ -189,7 +196,7 @@ QString UnitsModel::shortText() const
{
const auto u = m_enabledUnits.at(m_activeIndex);
const UnitData& ud = static_unitData.at(u);
return ud.shortName;
return qApp->translate("UnitsModel",ud.shortName);
}
Units::Type UnitsModel::selectedUnit() const
@ -427,7 +434,7 @@ QString QuantityValue::toString() const
const auto& data = static_unitData.at(unit);
int dp = data.decimals;
QString prefix;
QString suffix = data.shortName;
QString suffix = qApp->translate("UnitsModel", data.shortName);
if (data.isPrefix)
std::swap(prefix, suffix);

View file

@ -84,8 +84,8 @@ Item {
function summary()
{
var result = [];
if (startPaused.checked) result.push("paused");
if (!showConsoleWin.hidden && showConsoleWin.checked) result.push("console");
if (startPaused.checked) result.push(qsTr("paused"));
if (!showConsoleWin.hidden && showConsoleWin.checked) result.push(qsTr("console"));
return result;
}
@ -160,7 +160,7 @@ Item {
function summary()
{
var result = [];
if (enableMP.checked) result.push("multi-player");
if (enableMP.checked) result.push(qsTr("multi-player"));
return result;
}
@ -298,7 +298,7 @@ Item {
function summary()
{
var result = [];
if (terrasync.checked) result.push("scenery downloads");
if (terrasync.checked) result.push(qsTr("scenery downloads"));
return result;
}
@ -371,7 +371,7 @@ Item {
function summary()
{
var result = [];
if (fullscreen.checked) result.push("full-screen");
if (fullscreen.checked) result.push(qsTr("full-screen"));
return result;
}
@ -435,7 +435,7 @@ Item {
{
var result = [];
if (rembrandt) result.push(qsTr("Rembrandt"));
else if (alsEnabled) result.push("ALS");
else if (alsEnabled) result.push(qsTr("ALS"));
if (msaaEnabled) result.push(qsTr("anti-aliasing"));
return result;
}