QString TwitterDialog::metricToString(const RideMetric *m, SummaryMetrics &metrics, bool metricUnits) { QString s = "%1%2"; if (m->units(metricUnits) == "seconds" || m->units(metricUnits) == tr("seconds")) { s = s.arg(time_to_string(metrics.getForSymbol(m->symbol()))); s = s.arg(""); // no units } else { s = s.arg(metrics.getForSymbol(m->symbol()) * (metricUnits ? 1 : m->conversion()), 0, 'f', m->precision() + (metricUnits ? 0 : m->conversionSum())); s = s.arg(m->units(metricUnits)); } return s; }
void GcBubble::setText(QString filename) { SummaryMetrics metrics = parent->metricDB->getAllMetricsFor(filename); useMetricUnits = mainWindow->useMetricUnits; // // Workout code // QString wcode = metrics.getText("Workout Code", ""); if (wcode != "") { topleft->setText(wcode); topleft->show(); } else { topleft->hide(); } // // Sport // QString sport = metrics.getText("Sport", ""); if (sport != "") { topright->setText(sport); topright->show(); } else { topright->hide(); } swim->hide(); run->hide(); bike->hide(); // icons instead of text? if (sport == "Bike") { bike->show(); topright->hide(); } if (sport == "Swim") { swim->show(); topright->hide(); } if (sport == "Run") { run->show(); topright->hide(); } // // Ride Date // QDateTime rideDate = metrics.getRideDate(); topmiddle->setText(rideDate.toString("MMM d, yyyy")); // same format as ride list topmiddle2->setText(rideDate.toString("h:mm AP")); // Metrics 1,2,3,4 m1->setText(QTime(0,0,0,0).addSecs(metrics.getForSymbol("workout_time")).toString("hh:mm:ss")); //duration if (useMetricUnits) { m3->setText(QString("%1 km").arg(metrics.getForSymbol("total_distance"), 0, 'f', 2)); } else { m3->setText(QString("%1 mi").arg(metrics.getForSymbol("total_distance")*MILES_PER_KM, 0, 'f', 2)); } //distance m2->setText(QString("%1 TSS").arg(metrics.getForSymbol("coggan_tss"), 0, 'f', 0)); m4->setText(QString("%1 IF").arg(metrics.getForSymbol("coggan_if"), 0, 'f', 3)); // Icons QString data = metrics.getText("Data", ""); if (data.contains("P")) power->show(); else power->hide(); if (data.contains("S")) speed->show(); else speed->hide(); if (data.contains("H")) hr->show(); else hr->hide(); if (data.contains("C")) cad->show(); else cad->hide(); if (data.contains("N")) torque->show(); else torque->hide(); if (data.contains("A")) alt->show(); else alt->hide(); if (data.contains("G")) gps->show(); else gps->hide(); if (data.contains("E")) temp->show(); else temp->hide(); if (data.contains("W")) wind->show(); else wind->hide(); }