mirror of
https://github.com/ciphervance/supercell-wx.git
synced 2025-10-30 17:50:04 +00:00
save radar toolbox dock's visibility on exit
This commit is contained in:
parent
3ab18392b3
commit
3789845a36
3 changed files with 31 additions and 3 deletions
|
|
@ -277,9 +277,12 @@ MainWindow::MainWindow(QWidget* parent) :
|
|||
|
||||
ui->radarSitePresetsButton->setVisible(!radarSitePresets.empty());
|
||||
|
||||
auto& uiSettings = settings::UiSettings::Instance();
|
||||
// Configure Alert Dock
|
||||
bool alertDockVisible_ = uiSettings.alert_dock_visible().GetValue();
|
||||
p->alertDockWidget_ = new ui::AlertDockWidget(this);
|
||||
addDockWidget(Qt::BottomDockWidgetArea, p->alertDockWidget_);
|
||||
p->alertDockWidget_->setVisible(alertDockVisible_);
|
||||
|
||||
// GPS Info Dialog
|
||||
p->gpsInfoDialog_ = new ui::GpsInfoDialog(this);
|
||||
|
|
@ -289,10 +292,24 @@ MainWindow::MainWindow(QWidget* parent) :
|
|||
ui->radarToolboxDock->toggleViewAction());
|
||||
ui->radarToolboxDock->toggleViewAction()->setText(tr("Radar &Toolbox"));
|
||||
ui->actionRadarToolbox->setVisible(false);
|
||||
ui->radarToolboxDock->setVisible(
|
||||
uiSettings.radar_toolbox_dock_visible().GetValue());
|
||||
|
||||
// Update dock setting on visiblity change.
|
||||
connect(ui->radarToolboxDock->toggleViewAction(),
|
||||
&QAction::triggered,
|
||||
this,
|
||||
[](bool checked)
|
||||
{
|
||||
settings::UiSettings::Instance()
|
||||
.radar_toolbox_dock_visible()
|
||||
.StageValue(checked);
|
||||
});
|
||||
|
||||
ui->menuView->insertAction(ui->actionAlerts,
|
||||
p->alertDockWidget_->toggleViewAction());
|
||||
p->alertDockWidget_->toggleViewAction()->setText(tr("&Alerts"));
|
||||
ui->actionAlerts->setVisible(false);
|
||||
|
||||
ui->menuDebug->menuAction()->setVisible(
|
||||
settings::GeneralSettings::Instance().debug_enabled().GetValue());
|
||||
|
|
@ -801,7 +818,6 @@ void MainWindowImpl::ConfigureUiSettings()
|
|||
mapSettingsGroup_->SetExpanded(
|
||||
uiSettings.map_settings_expanded().GetValue());
|
||||
timelineGroup_->SetExpanded(uiSettings.timeline_expanded().GetValue());
|
||||
alertDockWidget_->setVisible(uiSettings.alert_dock_visible().GetValue());
|
||||
|
||||
connect(level2ProductsGroup_,
|
||||
&ui::CollapsibleGroup::StateChanged,
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ public:
|
|||
mapSettingsExpanded_.SetDefault(true);
|
||||
timelineExpanded_.SetDefault(true);
|
||||
alertDockVisible_.SetDefault(false);
|
||||
radarToolboxDockVisible_.SetDefault(true);
|
||||
}
|
||||
|
||||
~UiSettingsImpl() {}
|
||||
|
|
@ -30,6 +31,7 @@ public:
|
|||
SettingsVariable<bool> mapSettingsExpanded_ {"map_settings_expanded"};
|
||||
SettingsVariable<bool> timelineExpanded_ {"timeline_expanded"};
|
||||
SettingsVariable<bool> alertDockVisible_ {"alert_dock_visible"};
|
||||
SettingsVariable<bool> radarToolboxDockVisible_ {"radar_toolbox_dock_visible"};
|
||||
};
|
||||
|
||||
UiSettings::UiSettings() :
|
||||
|
|
@ -40,7 +42,8 @@ UiSettings::UiSettings() :
|
|||
&p->level3ProductsExpanded_,
|
||||
&p->mapSettingsExpanded_,
|
||||
&p->timelineExpanded_,
|
||||
&p->alertDockVisible_});
|
||||
&p->alertDockVisible_,
|
||||
&p->radarToolboxDockVisible_});
|
||||
SetDefaults();
|
||||
}
|
||||
UiSettings::~UiSettings() = default;
|
||||
|
|
@ -78,6 +81,12 @@ SettingsVariable<bool>& UiSettings::alert_dock_visible() const
|
|||
return p->alertDockVisible_;
|
||||
}
|
||||
|
||||
SettingsVariable<bool>& UiSettings::radar_toolbox_dock_visible() const
|
||||
{
|
||||
return p->radarToolboxDockVisible_;
|
||||
}
|
||||
|
||||
|
||||
bool UiSettings::Shutdown()
|
||||
{
|
||||
bool dataChanged = false;
|
||||
|
|
@ -89,6 +98,7 @@ bool UiSettings::Shutdown()
|
|||
dataChanged |= p->mapSettingsExpanded_.Commit();
|
||||
dataChanged |= p->timelineExpanded_.Commit();
|
||||
dataChanged |= p->alertDockVisible_.Commit();
|
||||
dataChanged |= p->radarToolboxDockVisible_.Commit();
|
||||
|
||||
return dataChanged;
|
||||
}
|
||||
|
|
@ -106,7 +116,8 @@ bool operator==(const UiSettings& lhs, const UiSettings& rhs)
|
|||
lhs.p->level3ProductsExpanded_ == rhs.p->level3ProductsExpanded_ &&
|
||||
lhs.p->mapSettingsExpanded_ == rhs.p->mapSettingsExpanded_ &&
|
||||
lhs.p->timelineExpanded_ == rhs.p->timelineExpanded_ &&
|
||||
lhs.p->alertDockVisible_ == rhs.p->alertDockVisible_);
|
||||
lhs.p->alertDockVisible_ == rhs.p->alertDockVisible_ &&
|
||||
lhs.p->radarToolboxDockVisible_ == rhs.p->radarToolboxDockVisible_);
|
||||
}
|
||||
|
||||
} // namespace settings
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ public:
|
|||
SettingsVariable<bool>& map_settings_expanded() const;
|
||||
SettingsVariable<bool>& timeline_expanded() const;
|
||||
SettingsVariable<bool>& alert_dock_visible() const;
|
||||
SettingsVariable<bool>& radar_toolbox_dock_visible() const;
|
||||
|
||||
bool Shutdown();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue