core: replace list of dives in trip by std::vector<>

The dive_table will be converted into a table of owning pointers.
Since the trip has only non-owning pointers to dives, turn
its dive_table into an std::vector<dive *>.

Add a helper functions to add/remove items in a sorted list.
These could be used elsewhere.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2024-06-02 17:06:18 +02:00 committed by bstoeger
parent 71518fa77e
commit 5c7cfb1057
12 changed files with 107 additions and 86 deletions

View file

@ -224,7 +224,7 @@ void setTripSelection(dive_trip *trip, dive *currentDive)
for (auto &t: *divelog.trips)
t->selected = t.get() == trip;
amount_selected = trip->dives.nr;
amount_selected = static_cast<int>(trip->dives.size());
amount_trips_selected = 1;
emit diveListNotifier.tripSelected(trip, currentDive);