Add images to buttons on main page
[harbour-pedalo.git] / src / journeymodel.cpp
index 18f83c2..1dc7d58 100644 (file)
@@ -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<Journey> const & JourneyModel::getData() const {
+    return journeys;
+}