Update set default products button on default radar site change

This commit is contained in:
AdenKoperczak 2025-04-13 11:38:25 -04:00
parent ddd8977586
commit 81ec5f9f7a
No known key found for this signature in database
GPG key ID: 9843017036F62EE7

View file

@ -139,6 +139,8 @@ public:
}
~MainWindowImpl()
{
homeRadarConnection_.disconnect();
auto& generalSettings = settings::GeneralSettings::Instance();
auto& customStyleUrl = generalSettings.custom_style_url();
@ -239,6 +241,8 @@ public:
layerActions_ {};
bool layerActionsInitialized_ {false};
boost::signals2::scoped_connection homeRadarConnection_ {};
std::vector<map::MapWidget*> maps_;
std::chrono::system_clock::time_point selectedTime_ {};
@ -1273,6 +1277,29 @@ void MainWindowImpl::ConnectOtherSignals()
timeLabel_->setVisible(true);
});
clockTimer_.start(1000);
auto& generalSettings = settings::GeneralSettings::Instance();
homeRadarConnection_ =
generalSettings.default_radar_site().changed_signal().connect(
[this]()
{
std::shared_ptr<config::RadarSite> radarSite =
activeMap_->GetRadarSite();
const std::string homeRadarSite =
settings::GeneralSettings::Instance()
.default_radar_site()
.GetValue();
if (radarSite == nullptr)
{
mainWindow_->ui->saveRadarProductsButton->setVisible(
false);
}
else
{
mainWindow_->ui->saveRadarProductsButton->setVisible(
radarSite->id() == homeRadarSite);
}
});
}
void MainWindowImpl::InitializeLayerDisplayActions()