From 13de3c0656155e73c96012f684c5fbedf43eba58 Mon Sep 17 00:00:00 2001 From: "Salvador E. Tropea" Date: Sat, 18 Feb 2023 19:42:36 -0300 Subject: [PATCH] Use constants for the names of the built-in colors - Avoid repetition and errors from typos - Allow simple changes - Simpler data type handling, the constants are wxString (Cherry-picked from f135881bd6378ccd92fd4d333fe0d65c9033d634 in 7.0) --- common/settings/app_settings.cpp | 3 ++- common/settings/color_settings.cpp | 6 ++++-- common/settings/settings_manager.cpp | 4 ++-- eeschema/dialogs/dialog_plot_schematic.cpp | 5 ++++- include/settings/color_settings.h | 4 ++++ 5 files changed, 16 insertions(+), 6 deletions(-) diff --git a/common/settings/app_settings.cpp b/common/settings/app_settings.cpp index d968714570..da726f96e8 100644 --- a/common/settings/app_settings.cpp +++ b/common/settings/app_settings.cpp @@ -25,6 +25,7 @@ #include #include #include +#include #include #include @@ -147,7 +148,7 @@ APP_SETTINGS_BASE::APP_SETTINGS_BASE( const std::string& aFilename, int aSchemaV &m_System.last_imperial_units, static_cast( EDA_UNITS::INCHES ) ) ); m_params.emplace_back( new PARAM( "appearance.color_theme", - &m_ColorTheme, wxS( "_builtin_default" ) ) ); + &m_ColorTheme, COLOR_SETTINGS::COLOR_BUILTIN_DEFAULT ) ); addParamsForWindow( &m_Window, "window" ); diff --git a/common/settings/color_settings.cpp b/common/settings/color_settings.cpp index 0050f68454..e9bda09789 100644 --- a/common/settings/color_settings.cpp +++ b/common/settings/color_settings.cpp @@ -31,6 +31,8 @@ ///! Update the schema version whenever a migration is required const int colorsSchemaVersion = 5; +const wxString COLOR_SETTINGS::COLOR_BUILTIN_DEFAULT = "_builtin_default"; +const wxString COLOR_SETTINGS::COLOR_BUILTIN_CLASSIC = "_builtin_classic"; COLOR_SETTINGS::COLOR_SETTINGS( const wxString& aFilename, bool aAbsolutePath ) : @@ -380,12 +382,12 @@ void COLOR_SETTINGS::SetColor( int aLayer, const COLOR4D& aColor ) std::vector COLOR_SETTINGS::CreateBuiltinColorSettings() { - COLOR_SETTINGS* defaultTheme = new COLOR_SETTINGS( wxT( "_builtin_default" ) ); + COLOR_SETTINGS* defaultTheme = new COLOR_SETTINGS( COLOR_BUILTIN_DEFAULT ); defaultTheme->SetName( _( "KiCad Default" ) ); defaultTheme->m_writeFile = false; defaultTheme->Load(); // We can just get the colors out of the param defaults for this one - COLOR_SETTINGS* classicTheme = new COLOR_SETTINGS( wxT( "_builtin_classic" ) ); + COLOR_SETTINGS* classicTheme = new COLOR_SETTINGS( COLOR_BUILTIN_CLASSIC ); classicTheme->SetName( _( "KiCad Classic" ) ); classicTheme->m_writeFile = false; diff --git a/common/settings/settings_manager.cpp b/common/settings/settings_manager.cpp index 958e9fc2f5..891b0ca401 100644 --- a/common/settings/settings_manager.cpp +++ b/common/settings/settings_manager.cpp @@ -207,7 +207,7 @@ COLOR_SETTINGS* SETTINGS_MANAGER::GetColorSettings( const wxString& aName ) if( !ret ) { ret = registerColorSettings( aName ); - *ret = *m_color_settings.at( "_builtin_default" ); + *ret = *m_color_settings.at( COLOR_SETTINGS::COLOR_BUILTIN_DEFAULT ); ret->SetFilename( wxT( "user" ) ); ret->SetReadOnly( false ); } @@ -216,7 +216,7 @@ COLOR_SETTINGS* SETTINGS_MANAGER::GetColorSettings( const wxString& aName ) } // This had better work - return m_color_settings.at( "_builtin_default" ); + return m_color_settings.at( COLOR_SETTINGS::COLOR_BUILTIN_DEFAULT ); } diff --git a/eeschema/dialogs/dialog_plot_schematic.cpp b/eeschema/dialogs/dialog_plot_schematic.cpp index fdc6e2dd94..3cb84c8108 100644 --- a/eeschema/dialogs/dialog_plot_schematic.cpp +++ b/eeschema/dialogs/dialog_plot_schematic.cpp @@ -338,7 +338,10 @@ COLOR_SETTINGS* DIALOG_PLOT_SCHEMATIC::getColorSettings() int selection = m_colorTheme->GetSelection(); if( selection < 0 ) - return m_parent->GetSettingsManager()->GetColorSettings( "_builtin_default" ); + { + return m_parent->GetSettingsManager()->GetColorSettings( + COLOR_SETTINGS::COLOR_BUILTIN_DEFAULT ); + } return static_cast( m_colorTheme->GetClientData( selection ) ); } diff --git a/include/settings/color_settings.h b/include/settings/color_settings.h index 9977e6dd92..9dc37cc247 100644 --- a/include/settings/color_settings.h +++ b/include/settings/color_settings.h @@ -90,6 +90,10 @@ public: */ static std::vector CreateBuiltinColorSettings(); + // Names for the built-in color settings + static const wxString COLOR_BUILTIN_DEFAULT; + static const wxString COLOR_BUILTIN_CLASSIC; + private: bool migrateSchema0to1();