cleanup: replace get_trip_date_string() by get_trip_string()

The get_trip_date_string() formatted, as the name implies, the date
of a trip. It was passed a number of parameters and had only one
caller, which would also add the location if it existed.
Therefore, move all that logic into the helper function and
name it get_trip_string().

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2020-09-29 22:45:21 +02:00 committed by Dirk Hohndel
parent 06c35026d6
commit f4ee893424
3 changed files with 14 additions and 9 deletions

View file

@ -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;

View file

@ -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();

View file

@ -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;
}
}