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