X-Git-Url: https://www.flypig.org.uk/git/?p=harbour-pedalo.git;a=blobdiff_plain;f=src%2Fjourneymodel.cpp;h=1dc7d58685d1e61e3a06921934b10d56c6ef570b;hp=18f83c2e68b58e0c0a9be7f60f67e5faf7f5421b;hb=5fc520bad80dccf9bf2e0f16552c9f2605417067;hpb=0108947ead4cc9e0ff23fee82db2fb1fd7cb2dad diff --git a/src/journeymodel.cpp b/src/journeymodel.cpp index 18f83c2..1dc7d58 100644 --- a/src/journeymodel.cpp +++ b/src/journeymodel.cpp @@ -19,6 +19,23 @@ void JourneyModel::addJourney(const Journey &journey) endInsertRows(); } +void JourneyModel::addJourney(QDateTime start, quint32 duration, quint32 overtook, quint32 overtakenby) { + quint64 startepoch = start.toMSecsSinceEpoch(); + addJourney(Journey(startepoch, duration, overtook, overtakenby)); +} + +void JourneyModel::editJourney(quint32 index, QDateTime start, quint32 duration, quint32 overtook, quint32 overtakenby) { + quint64 startepoch = start.toMSecsSinceEpoch(); + journeys.replace(index, Journey(startepoch, duration, overtook, overtakenby)); + emit dataChanged(createIndex(index, 0), createIndex(index, 0)); +} + +void JourneyModel::deleteJourney(quint32 index) { + beginRemoveRows(QModelIndex(), index, index); + journeys.removeAt(index); + endRemoveRows(); +} + int JourneyModel::rowCount(const QModelIndex & parent) const { Q_UNUSED(parent) return journeys.count(); @@ -55,6 +72,9 @@ void JourneyModel::exportToFile(QFile & file) { } file.close(); } + else { + qDebug() << "File failed to export"; + } } void JourneyModel::importFromFile(QFile & file) { @@ -82,3 +102,27 @@ void JourneyModel::importFromFile(QFile & file) { } +QDate JourneyModel::epochToDate(quint64 epoch) { + QDateTime date; + + date.setMSecsSinceEpoch(epoch); + return date.date(); +} + +QTime JourneyModel::epochToTime(quint64 epoch) { + QDateTime date; + + date.setMSecsSinceEpoch(epoch); + return date.time(); +} + +QDateTime JourneyModel::epochToDateTime(quint64 epoch) { + QDateTime date; + + date.setMSecsSinceEpoch(epoch); + return date; +} + +QList const & JourneyModel::getData() const { + return journeys; +}