mirror of
https://github.com/GoldenCheetah/GoldenCheetah.git
synced 2026-02-13 16:18:42 +00:00
Fix Metric/Imperial - conversion issues
In LTM Plot and on Summary Windows conversion ... data already converted for the curves was converted again ... for "Best" Summary the conversion was missing Referring to issues #1067 #1071 (see also comments on issue #1069
This commit is contained in:
@@ -1006,8 +1006,7 @@ LTMPlot::setData(LTMSettings *set)
|
||||
if (metricDetail.uunits == "km") precision=0;
|
||||
|
||||
// we have a metric so lets be precise ...
|
||||
labelString = QString("%1").arg(value * (context->athlete->useMetricUnits ? 1 : m->conversion())
|
||||
+ (context->athlete->useMetricUnits ? 0 : m->conversionSum()), 0, 'f', precision);
|
||||
labelString = QString("%1").arg(value, 0, 'f', precision);
|
||||
|
||||
} else {
|
||||
// no precision
|
||||
@@ -1857,8 +1856,7 @@ LTMPlot::setCompareData(LTMSettings *set)
|
||||
if (metricDetail.uunits == "km") precision=0;
|
||||
|
||||
// we have a metric so lets be precise ...
|
||||
labelString = QString("%1").arg(value * (context->athlete->useMetricUnits ? 1 : m->conversion())
|
||||
+ (context->athlete->useMetricUnits ? 0 : m->conversionSum()), 0, 'f', precision);
|
||||
labelString = QString("%1").arg(value , 0, 'f', precision);
|
||||
|
||||
} else {
|
||||
// no precision
|
||||
@@ -2019,8 +2017,7 @@ LTMPlot::setCompareData(LTMSettings *set)
|
||||
if (metricDetail.uunits == "km") precision=0;
|
||||
|
||||
// we have a metric so lets be precise ...
|
||||
labelString = QString("%1").arg(value * (context->athlete->useMetricUnits ? 1 : m->conversion())
|
||||
+ (context->athlete->useMetricUnits ? 0 : m->conversionSum()), 0, 'f', precision);
|
||||
labelString = QString("%1").arg(value, 0, 'f', precision);
|
||||
|
||||
} else {
|
||||
// no precision
|
||||
|
||||
@@ -1291,8 +1291,7 @@ LTMWindow::dataTable(bool html)
|
||||
if (settings.metrics[j].uunits == "seconds" || settings.metrics[j].uunits == tr("seconds")) precision=1;
|
||||
|
||||
// we have a metric so lets be precise ...
|
||||
QString v = QString("%1").arg(aggregates[j].y[i] * (context->athlete->useMetricUnits ? 1 : m->conversion())
|
||||
+ (context->athlete->useMetricUnits ? 0 : m->conversionSum()), 0, 'f', precision);
|
||||
QString v = QString("%1").arg(aggregates[j].y[i], 0, 'f', precision);
|
||||
|
||||
summary = summary.arg(v);
|
||||
|
||||
|
||||
@@ -211,7 +211,7 @@ QList<SummaryBest>
|
||||
SummaryMetrics::getBests(Context *context, QString symbol, int n,
|
||||
const QList<SummaryMetrics> &data,
|
||||
const QStringList &filters, bool filtered,
|
||||
bool /* useMetricUnits */)
|
||||
bool useMetricUnits )
|
||||
{
|
||||
QList<SummaryBest> results;
|
||||
|
||||
@@ -229,6 +229,9 @@ SummaryMetrics::getBests(Context *context, QString symbol, int n,
|
||||
// get this value
|
||||
SummaryBest add;
|
||||
add.nvalue = rideMetrics.getForSymbol(symbol);
|
||||
if (useMetricUnits == false) {
|
||||
add.nvalue *= metric->conversion();
|
||||
}
|
||||
add.date = rideMetrics.getRideDate().date();
|
||||
|
||||
// XXX this needs improving for all cases ... hack for now
|
||||
|
||||
Reference in New Issue
Block a user