Cleanup: introduce DiveTripModelBase::IS_TRIP_ROLE

To test whether an entry is a trip, we passed a pointer to the
trip through a QVariant and tested that for null-ity.

Passing pointers through QVariants has given us myriads of
problems in QML, therefore introduce a bool IS_TRIP_ROLE

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2019-11-11 21:36:51 +01:00 committed by bstoeger
parent a474264cc8
commit e434b5aa40
4 changed files with 5 additions and 4 deletions

View file

@ -348,8 +348,7 @@ void DiveListView::clearTripSelection()
// we want to make sure no trips are selected
Q_FOREACH (const QModelIndex &index, selectionModel()->selectedRows()) {
dive_trip_t *trip = index.data(DiveTripModelBase::TRIP_ROLE).value<dive_trip *>();
if (!trip)
if (!index.data(DiveTripModelBase::IS_TRIP_ROLE).toBool())
continue;
selectionModel()->select(index, QItemSelectionModel::Deselect);
}