Map: remove LocationInformationWidget::coordinatesChanged signal

This was used by LocationInformationWidget to instruct the map
that the coordinates of the current dive site has changed.
There is no reason why this couldn't be a function call, as no
other object ever connect()s to this signal. In fact, such a
function already exists viz. updateLocationOnMap.

Therefore, replace the signal by a simple function call.

Moreover, the uuid and coordinates of the dive site were transported
via the global "displayed_dive_site" object. Instead, pass this
information in the parameters of the function. This makes it
easier to reason about data- and control-flow.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2018-10-08 12:57:46 +02:00 committed by Dirk Hohndel
parent ad57871a2c
commit 66c5c5f72b
6 changed files with 17 additions and 16 deletions

View file

@ -57,8 +57,6 @@ LocationInformationWidget::LocationInformationWidget(QWidget *parent) : QGroupBo
this, &LocationInformationWidget::updateGpsCoordinates);
connect(this, &LocationInformationWidget::endEditDiveSite,
MapWidget::instance(), &MapWidget::repopulateLabels);
connect(this, &LocationInformationWidget::coordinatesChanged,
MapWidget::instance(), &MapWidget::updateCurrentDiveSiteCoordinatesToMap);
}
bool LocationInformationWidget::eventFilter(QObject *object, QEvent *ev)
@ -70,7 +68,7 @@ bool LocationInformationWidget::eventFilter(QObject *object, QEvent *ev)
contextMenu.exec(ctx->globalPos());
return true;
} else if (ev->type() == QEvent::FocusOut && object == ui.diveSiteCoordinates) {
emit coordinatesChanged();
updateLocationOnMap();
}
return false;
}
@ -218,7 +216,7 @@ void LocationInformationWidget::acceptChanges()
emit endRequestCoordinates();
emit endEditDiveSite();
emit stopFilterDiveSite();
emit coordinatesChanged();
updateLocationOnMap();
}
void LocationInformationWidget::rejectChanges()
@ -227,7 +225,7 @@ void LocationInformationWidget::rejectChanges()
emit endRequestCoordinates();
emit stopFilterDiveSite();
emit endEditDiveSite();
emit coordinatesChanged();
updateLocationOnMap();
}
void LocationInformationWidget::showEvent(QShowEvent *ev)
@ -336,7 +334,9 @@ void LocationInformationWidget::reverseGeocode()
void LocationInformationWidget::updateLocationOnMap()
{
emit coordinatesChanged();
if (displayed_dive_site.uuid)
MapWidget::instance()->updateDiveSiteCoordinates(displayed_dive_site.uuid, displayed_dive_site.latitude,
displayed_dive_site.longitude);
}
DiveLocationFilterProxyModel::DiveLocationFilterProxyModel(QObject*)