Dive site: pass dive-site pointer to nr_of_dives_at_dive_site()

Instead of passing a uuid, pass a pointer to the dive site.
This is small step in an effort to remove uuids.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2018-10-23 18:31:39 +02:00 committed by Dirk Hohndel
parent d3a7c5448f
commit 14ab95608c
3 changed files with 6 additions and 4 deletions

View file

@ -130,13 +130,15 @@ struct dive_site *alloc_or_get_dive_site(uint32_t uuid)
return ds;
}
int nr_of_dives_at_dive_site(uint32_t uuid, bool select_only)
int nr_of_dives_at_dive_site(struct dive_site *ds, bool select_only)
{
int j;
int nr = 0;
struct dive *d;
if (!ds)
return 0;
for_each_dive(j, d) {
if (d->dive_site_uuid == uuid && (!select_only || d->selected)) {
if (d->dive_site_uuid == ds->uuid && (!select_only || d->selected)) {
nr++;
}
}

View file

@ -54,7 +54,7 @@ static inline struct dive_site *get_dive_site_by_uuid(uint32_t uuid)
void dive_site_table_sort();
struct dive_site *alloc_or_get_dive_site(uint32_t uuid);
int nr_of_dives_at_dive_site(uint32_t uuid, bool select_only);
int nr_of_dives_at_dive_site(struct dive_site *ds, bool select_only);
bool is_dive_site_used(uint32_t uuid, bool select_only);
void free_dive_site(struct dive_site *ds);
void delete_dive_site(uint32_t id);

View file

@ -492,7 +492,7 @@ void LocationFilterDelegate::paint(QPainter *painter, const QStyleOptionViewItem
} else {
int distanceMeters = get_distance(&ds->location, &currentDiveSite->location);
QString distance = distance_string(distanceMeters);
int nr = nr_of_dives_at_dive_site(ds->uuid, false);
int nr = nr_of_dives_at_dive_site(ds, false);
bottomText += tr(" (~%1 away").arg(distance);
bottomText += tr(", %n dive(s) here)", "", nr);
}