summaryrefslogtreecommitdiffstats
path: root/qt-models
diff options
context:
space:
mode:
Diffstat (limited to 'qt-models')
-rw-r--r--qt-models/divelocationmodel.cpp9
-rw-r--r--qt-models/divelocationmodel.h2
2 files changed, 8 insertions, 3 deletions
diff --git a/qt-models/divelocationmodel.cpp b/qt-models/divelocationmodel.cpp
index abdf69f91..ff733f5ad 100644
--- a/qt-models/divelocationmodel.cpp
+++ b/qt-models/divelocationmodel.cpp
@@ -188,8 +188,13 @@ bool filter_same_gps_cb (QAbstractItemModel *model, int sourceRow, const QModelI
{
int ref_lat = displayed_dive_site.latitude.udeg;
int ref_lon = displayed_dive_site.longitude.udeg;
- QModelIndex curr = model->index(sourceRow, LocationInformationModel::UUID, parent.isValid() ? parent : QModelIndex());
+ QSortFilterProxyModel *self = (QSortFilterProxyModel*) model;
+
+ int ds_uuid = self->sourceModel()->index(sourceRow, LocationInformationModel::UUID, parent).data().toInt();
+ struct dive_site *ds = get_dive_site_by_uuid(ds_uuid);
+
+ if (!ds)
+ return false;
- struct dive_site *ds = get_dive_site_by_uuid(curr.data().toInt());
return (ds->latitude.udeg == ref_lat && ds->longitude.udeg == ref_lon);
} \ No newline at end of file
diff --git a/qt-models/divelocationmodel.h b/qt-models/divelocationmodel.h
index f40bbd1de..83bc97e67 100644
--- a/qt-models/divelocationmodel.h
+++ b/qt-models/divelocationmodel.h
@@ -11,7 +11,7 @@ class QLineEdit;
#define RECENTLY_ADDED_DIVESITE 1
-bool filter_same_gps_cb (int sourceRow, const QModelIndex& parent);
+bool filter_same_gps_cb (QAbstractItemModel *m, int sourceRow, const QModelIndex& parent);
class LocationInformationModel : public QAbstractTableModel {
Q_OBJECT