summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/qthelper.cpp14
-rw-r--r--core/qthelper.h3
-rw-r--r--qt-models/divetripmodel.cpp6
3 files changed, 14 insertions, 9 deletions
diff --git a/core/qthelper.cpp b/core/qthelper.cpp
index f8c06d755..25c5fd7ce 100644
--- a/core/qthelper.cpp
+++ b/core/qthelper.cpp
@@ -1018,15 +1018,23 @@ extern "C" char *get_current_date()
return copy_qstring(current_date);
}
-QString get_trip_date_string(timestamp_t when, int nr, bool getday)
+QString get_trip_string(const dive_trip *trip)
{
+ if (!trip)
+ return QString();
+
+ int nr = trip->dives.nr;
+ timestamp_t when = trip_date(trip);
+ bool getday = trip_is_single_day(trip);
+
QDateTime localTime = timestampToDateTime(when);
+ QString prefix = !empty_string(trip->location) ? QString(trip->location) + ", " : QString();
QString suffix = " " + gettextFromC::tr("(%n dive(s))", "", nr);
if (getday)
- return loc.toString(localTime, prefs.date_format) + suffix;
+ return prefix + loc.toString(localTime, prefs.date_format) + suffix;
else
- return loc.toString(localTime, "MMM yyyy") + suffix;
+ return prefix + loc.toString(localTime, "MMM yyyy") + suffix;
}
static QMutex hashOfMutex;
diff --git a/core/qthelper.h b/core/qthelper.h
index b703a38b4..9ea51f312 100644
--- a/core/qthelper.h
+++ b/core/qthelper.h
@@ -8,6 +8,7 @@
#include "subsurface-time.h"
struct picture;
+struct dive_trip;
// 1) Types
@@ -79,7 +80,7 @@ QString get_dive_date_string(timestamp_t when);
QString get_first_dive_date_string();
QString get_last_dive_date_string();
QString get_short_dive_date_string(timestamp_t when);
-QString get_trip_date_string(timestamp_t when, int nr, bool getday);
+QString get_trip_string(const dive_trip *trip);
QString getUiLanguage();
void initUiLanguage();
QLocale getLocale();
diff --git a/qt-models/divetripmodel.cpp b/qt-models/divetripmodel.cpp
index 789fb3b55..539cf98ff 100644
--- a/qt-models/divetripmodel.cpp
+++ b/qt-models/divetripmodel.cpp
@@ -119,14 +119,10 @@ QVariant DiveTripModelBase::tripData(const dive_trip *trip, int column, int role
switch (column) {
case DiveTripModelBase::NR:
QString shownText;
- bool oneDayTrip = trip_is_single_day(trip);
int countShown = trip_shown_dives(trip);
if (countShown < trip->dives.nr)
shownText = tr("(%1 shown)").arg(countShown);
- if (!empty_string(trip->location))
- return QString(trip->location) + ", " + get_trip_date_string(trip_date(trip), trip->dives.nr, oneDayTrip) + " "+ shownText;
- else
- return get_trip_date_string(trip_date(trip), trip->dives.nr, oneDayTrip) + shownText;
+ return get_trip_string(trip) + " " + shownText;
}
}