mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-31 23:23:23 +00:00
Fix trip summary line in dive list
Two errors fixed. - With no location set, the summary line would start with a ','. - When auto creating a trip for a manually added dive or when editing the dates of dives in a trip, the timestamp for the trip was not updated after editing the dive. Fixes #293 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
65e980d483
commit
6acff53735
4 changed files with 11 additions and 2 deletions
|
@ -600,7 +600,7 @@ static void delete_trip(dive_trip_t *trip)
|
||||||
free(trip);
|
free(trip);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void find_new_trip_start_time(dive_trip_t *trip)
|
void find_new_trip_start_time(dive_trip_t *trip)
|
||||||
{
|
{
|
||||||
struct dive *dive = trip->dives;
|
struct dive *dive = trip->dives;
|
||||||
timestamp_t when = dive->when;
|
timestamp_t when = dive->when;
|
||||||
|
|
|
@ -30,6 +30,7 @@ extern struct dive *merge_two_dives(struct dive *a, struct dive *b);
|
||||||
extern bool consecutive_selected();
|
extern bool consecutive_selected();
|
||||||
extern void select_dive(int idx);
|
extern void select_dive(int idx);
|
||||||
extern void deselect_dive(int idx);
|
extern void deselect_dive(int idx);
|
||||||
|
void find_new_trip_start_time(dive_trip_t *trip);
|
||||||
|
|
||||||
#ifdef DEBUG_TRIP
|
#ifdef DEBUG_TRIP
|
||||||
extern void dump_selection(void);
|
extern void dump_selection(void);
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
#include "globe.h"
|
#include "globe.h"
|
||||||
#include "completionmodels.h"
|
#include "completionmodels.h"
|
||||||
#include "diveplanner.h"
|
#include "diveplanner.h"
|
||||||
|
#include "divelist.h"
|
||||||
#include "qthelper.h"
|
#include "qthelper.h"
|
||||||
|
|
||||||
#include <QLabel>
|
#include <QLabel>
|
||||||
|
@ -499,6 +500,10 @@ void MainTab::acceptChanges()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
if (current_dive->divetrip) {
|
||||||
|
current_dive->divetrip->when = current_dive->when;
|
||||||
|
find_new_trip_start_time(current_dive->divetrip);
|
||||||
|
}
|
||||||
if (editMode == ADD || editMode == MANUALLY_ADDED_DIVE) {
|
if (editMode == ADD || editMode == MANUALLY_ADDED_DIVE) {
|
||||||
// clean up the dive data (get duration, depth information from samples)
|
// clean up the dive data (get duration, depth information from samples)
|
||||||
fixup_dive(current_dive);
|
fixup_dive(current_dive);
|
||||||
|
|
|
@ -929,7 +929,10 @@ QVariant TripItem::data(int column, int role) const
|
||||||
if (role == Qt::DisplayRole) {
|
if (role == Qt::DisplayRole) {
|
||||||
switch (column) {
|
switch (column) {
|
||||||
case DiveTripModel::NR:
|
case DiveTripModel::NR:
|
||||||
ret = QString(trip->location) + ", " + get_trip_date_string(trip->when, trip->nrdives);
|
if (trip->location && *trip->location)
|
||||||
|
ret = QString(trip->location) + ", " + get_trip_date_string(trip->when, trip->nrdives);
|
||||||
|
else
|
||||||
|
ret = get_trip_date_string(trip->when, trip->nrdives);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue