diff --git a/src/RideCache.cpp b/src/RideCache.cpp index bbd0520a8..3d08f751a 100644 --- a/src/RideCache.cpp +++ b/src/RideCache.cpp @@ -71,6 +71,9 @@ RideCache::RideCache(Context *context) : context(context) // load the store - will unstale once cache restored load(); + // now sort it + qSort(rides_.begin(), rides_.end(), rideCacheLessThan); + // set model once we have the basics model_ = new RideCacheModel(context, this); @@ -171,6 +174,7 @@ RideCache::addRide(QString name, bool dosignal, bool useTempActivities) for (int index=0; index < rides_.count(); index++) { if (rides_[index]->fileName == last->fileName) { rides_[index] = last; + added = true; break; } } diff --git a/src/RideFileCache.cpp b/src/RideFileCache.cpp index 3cc5a9048..e8cde7a5c 100644 --- a/src/RideFileCache.cpp +++ b/src/RideFileCache.cpp @@ -104,6 +104,10 @@ RideFileCache::RideFileCache(Context *context, QString fileName, double weight, // WE'RE GOOD if (check == false) readCache(); // if check is false we aren't just checking return; + } else { + // for debug only + //qDebug()<<"refresh because version ("<model()->index(i,0,QModelIndex()); for (int j=0; jmodel()->rowCount(group); j++) { - - QString fileName = tableView->model()->data(tableView->model()->index(j,2, group), Qt::DisplayRole).toString(); + QString fileName = tableView->model()->data(tableView->model()->index(j,2, group), Qt::UserRole+1).toString(); if (fileName == currentItem->fileName) { // we set current index to column 2 (date/time) since we can be guaranteed it is always show (all others are removable) tableView->scrollTo(tableView->model()->index(j,3,group)); diff --git a/src/RideNavigatorProxy.h b/src/RideNavigatorProxy.h index de9a6a9e2..bf01a68cb 100644 --- a/src/RideNavigatorProxy.h +++ b/src/RideNavigatorProxy.h @@ -113,13 +113,15 @@ public: isRunIndex = -1; tempIndex = -1; for(int i=0; icolumnCount(); i++) { + if (model->headerData(i, Qt::Horizontal, Qt::DisplayRole).toString() == "Xaverage_temp") { tempIndex = i; } if (model->headerData(i, Qt::Horizontal, Qt::DisplayRole).toString() == "isRun") { isRunIndex = i; } - if (model->headerData(i, Qt::Horizontal, Qt::DisplayRole).toString() == "filename") { + if (model->headerData(i, Qt::Horizontal, Qt::DisplayRole).toString() == "filename" || + model->headerData(i, Qt::Horizontal, Qt::DisplayRole).toString() == tr("File")) { fileIndex = i; } if (model->headerData(i, Qt::Horizontal, Qt::DisplayRole).toString() == "color") { @@ -322,7 +324,7 @@ public: } else if (role == (Qt::UserRole+1)) { // FILENAME ? - if (colorColumn != -1 && proxyIndex.internalPointer()) { + if (fileIndex != -1 && proxyIndex.internalPointer()) { QString filename;