From 0a5cb2b4a3a3e291045cbedfa9611e1bfd8bcc0f Mon Sep 17 00:00:00 2001 From: Mark Liversedge Date: Thu, 1 Jan 2015 11:28:01 +0000 Subject: [PATCH] W'bal and Derived refresh .. during mass update, not just on data change. --- src/RideFile.h | 1 + src/RideItem.cpp | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/RideFile.h b/src/RideFile.h index 3bfa6496d..5ebbeeb37 100644 --- a/src/RideFile.h +++ b/src/RideFile.h @@ -121,6 +121,7 @@ class RideFile : public QObject // QObject to emit signals friend class RideFileCommand; // tells us we were modified friend class RideCache; // tells us if wbal is stale + friend class RideItem; // derived/wbal stale friend class MainWindow; // tells us we were modified friend class Context; // tells us we were saved diff --git a/src/RideItem.cpp b/src/RideItem.cpp index 366471866..6a2b58a5f 100644 --- a/src/RideItem.cpp +++ b/src/RideItem.cpp @@ -204,11 +204,15 @@ RideItem::notifyRideDataChanged() isstale=true; // force a recompute of derived data series - if (ride_) ride_->recalculateDerivedSeries(true); + if (ride_) { + ride_->wstale = true; + ride_->recalculateDerivedSeries(true); + } // refresh the cache if (fileCache_) fileCache_->refresh(ride()); + // refresh the data refresh(); @@ -448,6 +452,11 @@ RideItem::refresh() // close if we opened it if (doclose) { close(); + } else { + + // if it is open then recompute + ride_->wstale = true; + ride_->recalculateDerivedSeries(true); } } else {