From 69984cec9c8d4abcab84994df9f158cc98e3093b Mon Sep 17 00:00:00 2001 From: Magne Sjaastad Date: Wed, 29 Mar 2017 20:53:00 +0200 Subject: [PATCH] #1357 Always use vector with largest item count when producing time step strings --- .../ProjectDataModel/RimEclipseCase.cpp | 26 +++++++------------ .../ProjectDataModel/RimEclipseCase.h | 1 - 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/ApplicationCode/ProjectDataModel/RimEclipseCase.cpp b/ApplicationCode/ProjectDataModel/RimEclipseCase.cpp index 2ef806de91..a18ce1e41b 100644 --- a/ApplicationCode/ProjectDataModel/RimEclipseCase.cpp +++ b/ApplicationCode/ProjectDataModel/RimEclipseCase.cpp @@ -561,7 +561,7 @@ QStringList RimEclipseCase::timeStepStrings() { QStringList stringList; - int timeStepCount = static_cast(results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->timeStepCount(0)); + int timeStepCount = static_cast(results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->maxTimeStepCount()); for (int i = 0; i < timeStepCount; i++) { stringList += this->timeStepName(i); @@ -576,45 +576,37 @@ QStringList RimEclipseCase::timeStepStrings() QString RimEclipseCase::timeStepName(int frameIdx) { + std::vector timeStepDates = this->timeStepDates(); + CVF_ASSERT(frameIdx < timeStepDates.size()); + if (m_timeStepFormatString.isEmpty()) { - std::vector timeStepDates = results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->timeStepDates(0); - - bool hasHrsAndMinutesInTimesteps = false; + bool hasHoursAndMinutesInTimesteps = false; for (size_t i = 0; i < timeStepDates.size(); i++) { if (timeStepDates[i].time().hour() != 0.0 || timeStepDates[i].time().minute() != 0.0) { - hasHrsAndMinutesInTimesteps = true; + hasHoursAndMinutesInTimesteps = true; break; } } m_timeStepFormatString = "dd.MMM yyyy"; - if (hasHrsAndMinutesInTimesteps) + if (hasHoursAndMinutesInTimesteps) { m_timeStepFormatString += " - hh:mm"; } } + QDateTime date = timeStepDates.at(frameIdx); - QDateTime date = results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->timeStepDate(0,frameIdx); return date.toString(m_timeStepFormatString); - } //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- -QDateTime RimEclipseCase::timeStepDate(int frameIdx) -{ - return results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->timeStepDate(0,frameIdx); -} - -//-------------------------------------------------------------------------------------------------- -/// -//-------------------------------------------------------------------------------------------------- -std::vector RimEclipseCase::timeStepDates() +std::vector RimEclipseCase::timeStepDates() { return results(RifReaderInterface::MATRIX_RESULTS)->cellResults()->timeStepDates(); } diff --git a/ApplicationCode/ProjectDataModel/RimEclipseCase.h b/ApplicationCode/ProjectDataModel/RimEclipseCase.h index bef4d9e096..2c3f2f6522 100644 --- a/ApplicationCode/ProjectDataModel/RimEclipseCase.h +++ b/ApplicationCode/ProjectDataModel/RimEclipseCase.h @@ -86,7 +86,6 @@ public: virtual std::vector views(); virtual QStringList timeStepStrings(); virtual QString timeStepName(int frameIdx); - virtual QDateTime timeStepDate(int frameIdx); std::vector timeStepDates();