mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
map-widget: allow real-time updates of edited markers
This patch allows updating the location of map markers while editing a dive site and updating the text in the LocationInformationWidget in real-time. Currently it is only possible to see the marker changes by clicking 'Apply'. The modification required the following changes: - add the MapWidget::updateCurrentDiveSiteCoordinatesToMap() slot and call it each time the GPS text updates - separate the updateCurrentDiveSiteCoordinates(FromMap/ToMap) logic by having the FromMap/ToMap suffix to method names - make MapWidgetHelper::updateCurrentDiveSiteCoordinatesToMap() call a new MapLocationModel::updateMapLocationCoordinates() method, which updates selected location coordinates and the model - add MapLocation::setCoordinateNoEmit() that does not emit a signal when updating a coordinate Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
This commit is contained in:
parent
89ccdc3178
commit
746874a78e
8 changed files with 45 additions and 3 deletions
|
|
@ -27,6 +27,7 @@ public:
|
|||
QVariant getRole(int role) const;
|
||||
QGeoCoordinate coordinate();
|
||||
void setCoordinate(QGeoCoordinate coord);
|
||||
void setCoordinateNoEmit(QGeoCoordinate coord);
|
||||
quint32 uuid();
|
||||
|
||||
enum Roles {
|
||||
|
|
@ -62,6 +63,7 @@ public:
|
|||
void addList(QVector<MapLocation *>);
|
||||
void clear();
|
||||
MapLocation *getMapLocationForUuid(quint32 uuid);
|
||||
void updateMapLocationCoordinates(quint32 uuid, QGeoCoordinate coord);
|
||||
Q_INVOKABLE void setSelectedUuid(QVariant uuid, QVariant fromClick = true);
|
||||
quint32 selectedUuid();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue