diff options
author | Lubomir I. Ivanov <neolit123@gmail.com> | 2017-07-17 22:59:14 +0300 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2017-07-28 07:31:11 -0700 |
commit | 6ed807f52d7837e1e8e87a182ca053ca17f45b5b (patch) | |
tree | 19f04e5ad9029b5a66a01e80cba03e54634ae736 /mobile-widgets/qmlmapwidgethelper.cpp | |
parent | 8fe068f1915f91bb3d9463874515db7f83145d8a (diff) | |
download | subsurface-6ed807f52d7837e1e8e87a182ca053ca17f45b5b.tar.gz |
maplocationmodel: add the addList() method
This method should be used if many markers are added at once.
It's main purpose is to reduces the number of beingInsertRows()
calls.
Make MapWidgetHelper::reloadMapLocations() use it.
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Diffstat (limited to 'mobile-widgets/qmlmapwidgethelper.cpp')
-rw-r--r-- | mobile-widgets/qmlmapwidgethelper.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/mobile-widgets/qmlmapwidgethelper.cpp b/mobile-widgets/qmlmapwidgethelper.cpp index c560c5aaf..7e653692a 100644 --- a/mobile-widgets/qmlmapwidgethelper.cpp +++ b/mobile-widgets/qmlmapwidgethelper.cpp @@ -29,12 +29,14 @@ void MapWidgetHelper::reloadMapLocations() struct dive_site *ds;
int idx;
m_mapLocationModel->clear();
+ QList<MapLocation *> locationList;
for_each_dive_site(idx, ds) {
if (!dive_site_has_gps_location(ds))
continue;
const qreal longitude = ds->longitude.udeg / 1000000.0;
const qreal latitude = ds->latitude.udeg / 1000000.0;
- m_mapLocationModel->add(new MapLocation(QGeoCoordinate(latitude, longitude)));
+ locationList.append(new MapLocation(QGeoCoordinate(latitude, longitude)));
}
+ m_mapLocationModel->addList(locationList);
}
|