From a8f1bb96c7f3030cd2f02fd1576c2c9a0bb20d00 Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Wed, 28 Feb 2018 23:45:05 +0100 Subject: [PATCH] Ref T131, allow to obtain settings from UI component Useful if we want to avoid to duplicate the settings, but access existing ones --- src/blackgui/components/settingscomponent.cpp | 7 +++++++ src/blackgui/components/settingscomponent.h | 4 ++++ src/blackgui/components/settingssimulatorbasicscomponent.h | 3 +++ 3 files changed, 14 insertions(+) diff --git a/src/blackgui/components/settingscomponent.cpp b/src/blackgui/components/settingscomponent.cpp index 3cf7cbd77..d7418f32c 100644 --- a/src/blackgui/components/settingscomponent.cpp +++ b/src/blackgui/components/settingscomponent.cpp @@ -31,6 +31,8 @@ using namespace BlackMisc::Aviation; using namespace BlackMisc::Audio; using namespace BlackMisc::PhysicalQuantities; using namespace BlackMisc::Input; +using namespace BlackMisc::Simulation; +using namespace BlackMisc::Simulation::Settings; using namespace BlackCore; using namespace BlackGui; using namespace BlackConfig; @@ -126,6 +128,11 @@ namespace BlackGui return ui->comp_AudioSetup->playNotificationSounds(); } + CSpecializedSimulatorSettings CSettingsComponent::getSimulatorSettings(const CSimulatorInfo &simulator) const + { + return ui->comp_SettingsSimulatorBasics->getSimulatorSettings(simulator); + } + void CSettingsComponent::setSettingsTab(CSettingsComponent::SettingTab tab) { this->setCurrentIndex(static_cast(tab)); diff --git a/src/blackgui/components/settingscomponent.h b/src/blackgui/components/settingscomponent.h index 197d595ec..7c119af6e 100644 --- a/src/blackgui/components/settingscomponent.h +++ b/src/blackgui/components/settingscomponent.h @@ -13,6 +13,7 @@ #define BLACKGUI_COMPONENTS_SETTINGSCOMPONENT_H #include "blackgui/blackguiexport.h" +#include "blackmisc/simulation/settings/simulatorsettings.h" #include #include #include @@ -57,6 +58,9 @@ namespace BlackGui //! \copydoc CAudioSetupComponent::playNotificationSounds bool playNotificationSounds() const; + //! Settings for given simulator + BlackMisc::Simulation::Settings::CSpecializedSimulatorSettings getSimulatorSettings(const BlackMisc::Simulation::CSimulatorInfo &simulator) const; + signals: //! Change the windows opacity 0..100 void changedWindowsOpacity(int opacity); diff --git a/src/blackgui/components/settingssimulatorbasicscomponent.h b/src/blackgui/components/settingssimulatorbasicscomponent.h index 7bc577b76..c012cf661 100644 --- a/src/blackgui/components/settingssimulatorbasicscomponent.h +++ b/src/blackgui/components/settingssimulatorbasicscomponent.h @@ -52,6 +52,9 @@ namespace BlackGui //! Save data void save(); + //! Settings for given simulator + BlackMisc::Simulation::Settings::CSpecializedSimulatorSettings getSimulatorSettings(const BlackMisc::Simulation::CSimulatorInfo &simulator) const { return m_settings.getSpecializedSettings(simulator); } + private: QScopedPointer ui; BlackMisc::Simulation::Settings::CMultiSimulatorSettings m_settings { this };