Fix middle click selecting the nearest radar site

Fixes #216
This commit is contained in:
Dan Paulat 2024-05-30 20:46:55 -05:00
parent 31edd9e8e5
commit 41d47878e3
3 changed files with 8 additions and 6 deletions

View file

@ -978,11 +978,11 @@ void MainWindowImpl::ConnectAnimationSignals()
connect(maps_[i], connect(maps_[i],
&map::MapWidget::RadarSiteRequested, &map::MapWidget::RadarSiteRequested,
this, this,
[this](const std::string& id) [this](const std::string& id, bool updateCoordinates)
{ {
for (map::MapWidget* map : maps_) for (map::MapWidget* map : maps_)
{ {
map->SelectRadarSite(id); map->SelectRadarSite(id, updateCoordinates);
} }
UpdateRadarSite(); UpdateRadarSite();

View file

@ -1137,8 +1137,9 @@ void MapWidgetImpl::AddLayer(types::LayerType type,
AddLayer(layerName, radarSiteLayer_, before); AddLayer(layerName, radarSiteLayer_, before);
connect(radarSiteLayer_.get(), connect(radarSiteLayer_.get(),
&RadarSiteLayer::RadarSiteSelected, &RadarSiteLayer::RadarSiteSelected,
widget_, this,
&MapWidget::RadarSiteRequested); [this](const std::string& id)
{ widget_->RadarSiteRequested(id); });
break; break;
default: default:
@ -1760,7 +1761,7 @@ void MapWidgetImpl::SelectNearestRadarSite(double latitude,
if (radarSite != nullptr) if (radarSite != nullptr)
{ {
widget_->SelectRadarSite(radarSite->id(), false); Q_EMIT widget_->RadarSiteRequested(radarSite->id(), false);
} }
} }

View file

@ -168,7 +168,8 @@ signals:
*/ */
void MouseCoordinateChanged(common::Coordinate coordinate); void MouseCoordinateChanged(common::Coordinate coordinate);
void RadarSiteRequested(const std::string& id); void RadarSiteRequested(const std::string& id,
bool updateCoordinates = true);
void RadarSiteUpdated(std::shared_ptr<config::RadarSite> radarSite); void RadarSiteUpdated(std::shared_ptr<config::RadarSite> radarSite);
void RadarSweepUpdated(); void RadarSweepUpdated();
void RadarSweepNotUpdated(types::NoUpdateReason reason); void RadarSweepNotUpdated(types::NoUpdateReason reason);