mirror of
				https://github.com/ciphervance/supercell-wx.git
				synced 2025-10-31 00:10:06 +00:00 
			
		
		
		
	Return SettingsVariable objects instead of values
This commit is contained in:
		
							parent
							
								
									891b6c839f
								
							
						
					
					
						commit
						7522162095
					
				
					 10 changed files with 58 additions and 50 deletions
				
			
		|  | @ -76,8 +76,9 @@ public: | |||
|          } | ||||
|       } | ||||
| 
 | ||||
|       std::string mapboxApiKey = | ||||
|          manager::SettingsManager::general_settings().mapbox_api_key(); | ||||
|       std::string mapboxApiKey = manager::SettingsManager::general_settings() | ||||
|                                     .mapbox_api_key() | ||||
|                                     .GetValue(); | ||||
| 
 | ||||
|       settings_.resetToTemplate(QMapLibreGL::Settings::MapboxSettings); | ||||
|       settings_.setApiKey(QString {mapboxApiKey.c_str()}); | ||||
|  | @ -172,7 +173,7 @@ MainWindow::MainWindow(QWidget* parent) : | |||
|    ui->actionAlerts->setVisible(false); | ||||
| 
 | ||||
|    ui->menuDebug->menuAction()->setVisible( | ||||
|       manager::SettingsManager::general_settings().debug_enabled()); | ||||
|       manager::SettingsManager::general_settings().debug_enabled().GetValue()); | ||||
| 
 | ||||
|    // Configure Resource Explorer Dock
 | ||||
|    ui->resourceExplorerDock->setVisible(false); | ||||
|  | @ -215,8 +216,9 @@ MainWindow::MainWindow(QWidget* parent) : | |||
|    for (size_t i = 0; i < p->maps_.size(); i++) | ||||
|    { | ||||
|       p->SelectRadarProduct(p->maps_.at(i), | ||||
|                             mapSettings.radar_product_group(i), | ||||
|                             mapSettings.radar_product(i), | ||||
|                             common::GetRadarProductGroup( | ||||
|                                mapSettings.radar_product_group(i).GetValue()), | ||||
|                             mapSettings.radar_product(i).GetValue(), | ||||
|                             0); | ||||
|    } | ||||
| 
 | ||||
|  | @ -367,8 +369,8 @@ void MainWindowImpl::ConfigureMapLayout() | |||
| { | ||||
|    auto& generalSettings = manager::SettingsManager::general_settings(); | ||||
| 
 | ||||
|    const int64_t gridWidth  = generalSettings.grid_width(); | ||||
|    const int64_t gridHeight = generalSettings.grid_height(); | ||||
|    const int64_t gridWidth  = generalSettings.grid_width().GetValue(); | ||||
|    const int64_t gridHeight = generalSettings.grid_height().GetValue(); | ||||
|    const int64_t mapCount   = gridWidth * gridHeight; | ||||
| 
 | ||||
|    size_t mapIndex = 0; | ||||
|  |  | |||
|  | @ -81,7 +81,8 @@ public: | |||
|        prevPitch_ {0.0} | ||||
|    { | ||||
|       SetRadarSite(scwx::qt::manager::SettingsManager::general_settings() | ||||
|                       .default_radar_site()); | ||||
|                       .default_radar_site() | ||||
|                       .GetValue()); | ||||
| 
 | ||||
|       // Create ImGui Context
 | ||||
|       static size_t currentMapId_ {0u}; | ||||
|  | @ -835,7 +836,9 @@ void MapWidgetImpl::InitializeNewRadarProductView( | |||
|          auto radarProductView = context_->radar_product_view(); | ||||
| 
 | ||||
|          std::string colorTableFile = | ||||
|             manager::SettingsManager::palette_settings().palette(colorPalette); | ||||
|             manager::SettingsManager::palette_settings() | ||||
|                .palette(colorPalette) | ||||
|                .GetValue(); | ||||
|          if (!colorTableFile.empty()) | ||||
|          { | ||||
|             std::shared_ptr<common::ColorTable> colorTable = | ||||
|  |  | |||
|  | @ -61,34 +61,35 @@ GeneralSettings::GeneralSettings(GeneralSettings&&) noexcept = default; | |||
| GeneralSettings& | ||||
| GeneralSettings::operator=(GeneralSettings&&) noexcept = default; | ||||
| 
 | ||||
| bool GeneralSettings::debug_enabled() const | ||||
| SettingsVariable<bool>& GeneralSettings::debug_enabled() const | ||||
| { | ||||
|    return p->debugEnabled_.GetValue(); | ||||
|    return p->debugEnabled_; | ||||
| } | ||||
| 
 | ||||
| std::string GeneralSettings::default_radar_site() const | ||||
| SettingsVariable<std::string>& GeneralSettings::default_radar_site() const | ||||
| { | ||||
|    return p->defaultRadarSite_.GetValue(); | ||||
|    return p->defaultRadarSite_; | ||||
| } | ||||
| 
 | ||||
| std::vector<std::int64_t> GeneralSettings::font_sizes() const | ||||
| SettingsContainer<std::vector<std::int64_t>>& | ||||
| GeneralSettings::font_sizes() const | ||||
| { | ||||
|    return p->fontSizes_.GetValue(); | ||||
|    return p->fontSizes_; | ||||
| } | ||||
| 
 | ||||
| std::int64_t GeneralSettings::grid_height() const | ||||
| SettingsVariable<std::int64_t>& GeneralSettings::grid_height() const | ||||
| { | ||||
|    return p->gridHeight_.GetValue(); | ||||
|    return p->gridHeight_; | ||||
| } | ||||
| 
 | ||||
| std::int64_t GeneralSettings::grid_width() const | ||||
| SettingsVariable<std::int64_t>& GeneralSettings::grid_width() const | ||||
| { | ||||
|    return p->gridWidth_.GetValue(); | ||||
|    return p->gridWidth_; | ||||
| } | ||||
| 
 | ||||
| std::string GeneralSettings::mapbox_api_key() const | ||||
| SettingsVariable<std::string>& GeneralSettings::mapbox_api_key() const | ||||
| { | ||||
|    return p->mapboxApiKey_.GetValue(); | ||||
|    return p->mapboxApiKey_; | ||||
| } | ||||
| 
 | ||||
| bool operator==(const GeneralSettings& lhs, const GeneralSettings& rhs) | ||||
|  |  | |||
|  | @ -1,6 +1,7 @@ | |||
| #pragma once | ||||
| 
 | ||||
| #include <scwx/qt/settings/settings_category.hpp> | ||||
| #include <scwx/qt/settings/settings_container.hpp> | ||||
| 
 | ||||
| #include <memory> | ||||
| #include <string> | ||||
|  | @ -26,12 +27,12 @@ public: | |||
|    GeneralSettings(GeneralSettings&&) noexcept; | ||||
|    GeneralSettings& operator=(GeneralSettings&&) noexcept; | ||||
| 
 | ||||
|    bool                 debug_enabled() const; | ||||
|    std::string          default_radar_site() const; | ||||
|    std::vector<int64_t> font_sizes() const; | ||||
|    std::int64_t         grid_height() const; | ||||
|    std::int64_t         grid_width() const; | ||||
|    std::string          mapbox_api_key() const; | ||||
|    SettingsVariable<bool>&                       debug_enabled() const; | ||||
|    SettingsVariable<std::string>&                default_radar_site() const; | ||||
|    SettingsContainer<std::vector<std::int64_t>>& font_sizes() const; | ||||
|    SettingsVariable<std::int64_t>&               grid_height() const; | ||||
|    SettingsVariable<std::int64_t>&               grid_width() const; | ||||
|    SettingsVariable<std::string>&                mapbox_api_key() const; | ||||
| 
 | ||||
|    friend bool operator==(const GeneralSettings& lhs, | ||||
|                           const GeneralSettings& rhs); | ||||
|  |  | |||
|  | @ -2,6 +2,7 @@ | |||
| #include <scwx/qt/config/radar_site.hpp> | ||||
| #include <scwx/qt/settings/settings_variable.hpp> | ||||
| #include <scwx/qt/util/json.hpp> | ||||
| #include <scwx/common/products.hpp> | ||||
| #include <scwx/util/logger.hpp> | ||||
| 
 | ||||
| #include <array> | ||||
|  | @ -124,20 +125,20 @@ std::size_t MapSettings::count() const | |||
|    return kCount_; | ||||
| } | ||||
| 
 | ||||
| std::string MapSettings::radar_site(std::size_t i) const | ||||
| SettingsVariable<std::string>& MapSettings::radar_site(std::size_t i) const | ||||
| { | ||||
|    return p->map_[i].radarSite_.GetValue(); | ||||
|    return p->map_[i].radarSite_; | ||||
| } | ||||
| 
 | ||||
| common::RadarProductGroup MapSettings::radar_product_group(std::size_t i) const | ||||
| SettingsVariable<std::string>& | ||||
| MapSettings::radar_product_group(std::size_t i) const | ||||
| { | ||||
|    return common::GetRadarProductGroup( | ||||
|       p->map_[i].radarProductGroup_.GetValue()); | ||||
|    return p->map_[i].radarProductGroup_; | ||||
| } | ||||
| 
 | ||||
| std::string MapSettings::radar_product(std::size_t i) const | ||||
| SettingsVariable<std::string>& MapSettings::radar_product(std::size_t i) const | ||||
| { | ||||
|    return p->map_[i].radarProduct_.GetValue(); | ||||
|    return p->map_[i].radarProduct_; | ||||
| } | ||||
| 
 | ||||
| bool MapSettings::ReadJson(const boost::json::object& json) | ||||
|  |  | |||
|  | @ -1,7 +1,7 @@ | |||
| #pragma once | ||||
| 
 | ||||
| #include <scwx/common/products.hpp> | ||||
| #include <scwx/qt/settings/settings_category.hpp> | ||||
| #include <scwx/qt/settings/settings_variable.hpp> | ||||
| 
 | ||||
| #include <memory> | ||||
| #include <string> | ||||
|  | @ -27,10 +27,10 @@ public: | |||
|    MapSettings(MapSettings&&) noexcept; | ||||
|    MapSettings& operator=(MapSettings&&) noexcept; | ||||
| 
 | ||||
|    std::size_t               count() const; | ||||
|    std::string               radar_site(std::size_t i) const; | ||||
|    common::RadarProductGroup radar_product_group(std::size_t i) const; | ||||
|    std::string               radar_product(std::size_t i) const; | ||||
|    std::size_t                    count() const; | ||||
|    SettingsVariable<std::string>& radar_site(std::size_t i) const; | ||||
|    SettingsVariable<std::string>& radar_product_group(std::size_t i) const; | ||||
|    SettingsVariable<std::string>& radar_product(std::size_t i) const; | ||||
| 
 | ||||
|    /**
 | ||||
|     * Reads the variables from the JSON object. | ||||
|  |  | |||
|  | @ -75,7 +75,8 @@ PaletteSettings::PaletteSettings(PaletteSettings&&) noexcept = default; | |||
| PaletteSettings& | ||||
| PaletteSettings::operator=(PaletteSettings&&) noexcept = default; | ||||
| 
 | ||||
| std::string PaletteSettings::palette(const std::string& name) const | ||||
| SettingsVariable<std::string>& | ||||
| PaletteSettings::palette(const std::string& name) const | ||||
| { | ||||
|    auto palette = p->palette_.find(name); | ||||
| 
 | ||||
|  | @ -84,12 +85,7 @@ std::string PaletteSettings::palette(const std::string& name) const | |||
|       palette = p->palette_.find(kDefaultKey); | ||||
|    } | ||||
| 
 | ||||
|    if (palette == p->palette_.cend()) | ||||
|    { | ||||
|       return kDefaultPalette; | ||||
|    } | ||||
| 
 | ||||
|    return palette->second.GetValue(); | ||||
|    return palette->second; | ||||
| } | ||||
| 
 | ||||
| bool operator==(const PaletteSettings& lhs, const PaletteSettings& rhs) | ||||
|  |  | |||
|  | @ -1,6 +1,7 @@ | |||
| #pragma once | ||||
| 
 | ||||
| #include <scwx/qt/settings/settings_category.hpp> | ||||
| #include <scwx/qt/settings/settings_variable.hpp> | ||||
| 
 | ||||
| #include <memory> | ||||
| #include <string> | ||||
|  | @ -26,7 +27,7 @@ public: | |||
|    PaletteSettings(PaletteSettings&&) noexcept; | ||||
|    PaletteSettings& operator=(PaletteSettings&&) noexcept; | ||||
| 
 | ||||
|    std::string palette(const std::string& name) const; | ||||
|    SettingsVariable<std::string>& palette(const std::string& name) const; | ||||
| 
 | ||||
|    friend bool operator==(const PaletteSettings& lhs, | ||||
|                           const PaletteSettings& rhs); | ||||
|  |  | |||
|  | @ -311,7 +311,7 @@ std::shared_ptr<Font> Font::Create(const std::string& resource) | |||
|    font->p->CreateImGuiFont( | ||||
|       fontFile, | ||||
|       fontData, | ||||
|       manager::SettingsManager::general_settings().font_sizes()); | ||||
|       manager::SettingsManager::general_settings().font_sizes().GetValue()); | ||||
| 
 | ||||
|    font->p->atlas_                   = ftgl::texture_atlas_new(512, 512, 1); | ||||
|    ftgl::texture_font_t* textureFont = ftgl::texture_font_new_from_memory( | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Dan Paulat
						Dan Paulat