![]() |
KiCad PCB EDA Suite
|
#include <footprint_editor_settings.h>
Classes | |
struct | USER_GRID |
Public Member Functions | |
FOOTPRINT_EDITOR_SETTINGS () | |
virtual | ~FOOTPRINT_EDITOR_SETTINGS () |
virtual bool | MigrateFromLegacy (wxConfigBase *aLegacyConfig) override |
Migrates from wxConfig to JSON-based configuration. More... | |
virtual const std::vector< wxString > | DefaultGridSizeList () const |
By default, this returns the list of grids available in PcbNew-based applications. More... | |
wxString | GetFilename () const |
wxString | GetFullFilename () const |
void | SetFilename (const wxString &aFilename) |
SETTINGS_LOC | GetLocation () const |
void | SetLegacyFilename (const wxString &aFilename) |
bool | IsReadOnly () const |
void | SetReadOnly (bool aReadOnly) |
virtual void | Load () |
Updates the parameters of this object based on the current JSON document contents. More... | |
virtual bool | Store () |
Stores the current parameters into the JSON document represented by this object Note: this doesn't do any writing to disk; that's handled by SETTINGS_MANAGER. More... | |
virtual bool | LoadFromFile (const wxString &aDirectory="") |
Loads the backing file from disk and then calls Load() More... | |
virtual bool | SaveToFile (const wxString &aDirectory="", bool aForce=false) |
void | ResetToDefaults () |
Resets all parameters to default values. More... | |
bool | IsDefault (const std::string &aParamName) |
Checks if the current state of a parameter matches its default value. More... | |
OPT< nlohmann::json > | GetJson (const std::string &aPath) const |
Fetches a JSON object that is a subset of this JSON_SETTINGS object, using a path of the form "key1.key2.key3" to refer to nested objects. More... | |
template<typename ValueType > | |
OPT< ValueType > | Get (const std::string &aPath) const |
Fetches a value from within the JSON document. More... | |
template<> | |
OPT< wxString > | Get (const std::string &aPath) const |
template<typename ValueType > | |
void | Set (const std::string &aPath, ValueType aVal) |
Stores a value into the JSON document Will throw an exception if ValueType isn't something that the library can handle. More... | |
template<> | |
void | Set (const std::string &aPath, wxString aVal) |
template<> | |
void | Set (const std::string &aPath, wxString aVal) |
bool | Migrate () |
Migrates the schema of this settings from the version in the file to the latest version. More... | |
void | AddNestedSettings (NESTED_SETTINGS *aSettings) |
Transfers ownership of a given NESTED_SETTINGS to this object. More... | |
void | ReleaseNestedSettings (NESTED_SETTINGS *aSettings) |
Saves and frees a nested settings object, if it exists within this one. More... | |
void | SetManager (SETTINGS_MANAGER *aManager) |
Static Public Member Functions | |
static nlohmann::json::json_pointer | PointerFromString (std::string aPath) |
Builds a JSON pointer based on a given string. More... | |
static bool | SetIfPresent (const nlohmann::json &aObj, const std::string &aPath, wxString &aTarget) |
Sets the given string if the given key/path is present. More... | |
static bool | SetIfPresent (const nlohmann::json &aObj, const std::string &aPath, bool &aTarget) |
Sets the given bool if the given key/path is present. More... | |
static bool | SetIfPresent (const nlohmann::json &aObj, const std::string &aPath, int &aTarget) |
Sets the given int if the given key/path is present. More... | |
static bool | SetIfPresent (const nlohmann::json &aObj, const std::string &aPath, unsigned int &aTarget) |
Sets the given unsigned int if the given key/path is present. More... | |
Public Attributes | |
BOARD_DESIGN_SETTINGS | m_DesignSettings |
Only some of these settings are actually used for footprint editing. More... | |
MAGNETIC_SETTINGS | m_MagneticItems |
PCB_DISPLAY_OPTIONS | m_Display |
USER_GRID | m_UserGrid |
bool | m_PolarCoords |
bool | m_Use45DegreeGraphicSegments |
int | m_LibWidth |
wxString | m_LastImportExportPath |
wxString | m_FootprintTextShownColumns |
SELECTION_FILTER_OPTIONS | m_SelectionFilter |
std::vector< LAYER_PRESET > | m_LayerPresets |
wxString | m_ActiveLayerPreset |
CROSS_PROBING_SETTINGS | m_CrossProbing |
FIND_REPLACE | m_FindReplace |
GRAPHICS | m_Graphics |
COLOR_PICKER | m_ColorPicker |
LIB_TREE | m_LibTree |
PRINTING | m_Printing |
SYSTEM | m_System |
WINDOW_SETTINGS | m_Window |
wxString | m_ColorTheme |
Active color theme name. More... | |
int | m_appSettingsSchemaVersion |
! Local schema version for common app settings More... | |
Protected Member Functions | |
virtual std::string | getLegacyFrameName () const override |
void | migrateFindReplace (wxConfigBase *aCfg) |
! Migrates the find/replace history string lists More... | |
bool | migrateWindowConfig (wxConfigBase *aCfg, const std::string &aFrameName, const std::string &aJsonPath) |
Migrates legacy window settings into the JSON document. More... | |
void | addParamsForWindow (WINDOW_SETTINGS *aWindow, const std::string &aJsonPath) |
Adds parameters for the given window object. More... | |
void | registerMigration (int aOldSchemaVersion, int aNewSchemaVersion, std::function< bool(void)> aMigrator) |
Registers a migration from one schema version to another. More... | |
template<typename ValueType > | |
bool | fromLegacy (wxConfigBase *aConfig, const std::string &aKey, const std::string &aDest) |
Translates a legacy wxConfig value to a given JSON pointer value. More... | |
bool | fromLegacyString (wxConfigBase *aConfig, const std::string &aKey, const std::string &aDest) |
Translates a legacy wxConfig string value to a given JSON pointer value. More... | |
bool | fromLegacyColor (wxConfigBase *aConfig, const std::string &aKey, const std::string &aDest) |
Translates a legacy COLOR4D stored in a wxConfig string to a given JSON pointer value. More... | |
virtual wxString | getFileExt () const |
virtual wxString | getLegacyFileExt () const |
Protected Attributes | |
wxString | m_filename |
The filename (not including path) of this settings file (inicode) More... | |
wxString | m_legacy_filename |
The filename of the wxConfig legacy file (if different from m_filename) More... | |
SETTINGS_LOC | m_location |
The location of this settings file (. More... | |
std::vector< PARAM_BASE * > | m_params |
The list of parameters (owned by this object) More... | |
std::vector< NESTED_SETTINGS * > | m_nested_settings |
Nested settings files that live inside this one, if any. More... | |
bool | m_createIfMissing |
Whether or not the backing store file should be created it if doesn't exist. More... | |
bool | m_createIfDefault |
Whether or not the backing store file should be created if all parameters are still at their default values. More... | |
bool | m_writeFile |
Whether or not the backing store file should be written. More... | |
bool | m_deleteLegacyAfterMigration |
Whether or not to delete legacy file after migration. More... | |
bool | m_resetParamsIfMissing |
Whether or not to set parameters to their default value if missing from JSON on Load() More... | |
int | m_schemaVersion |
Version of this settings schema. More... | |
SETTINGS_MANAGER * | m_manager |
A pointer to the settings manager managing this file (may be null) More... | |
std::vector< nlohmann::json::json_pointer > | m_preserved_paths |
A list of JSON pointers that are preserved during a read-update-write to disk. More... | |
std::map< int, std::pair< int, std::function< bool()> > > | m_migrators |
A map of starting schema version to a pair of <ending version, migrator function> More... | |
Private Member Functions | |
bool | migrateSchema0to1 () |
Definition at line 30 of file footprint_editor_settings.h.
FOOTPRINT_EDITOR_SETTINGS::FOOTPRINT_EDITOR_SETTINGS | ( | ) |
Definition at line 37 of file footprint_editor_settings.cpp.
References CAPTURE_ALWAYS, DEFAULT_COPPER_LINE_WIDTH, DEFAULT_COPPER_TEXT_SIZE, DEFAULT_COPPER_TEXT_WIDTH, DEFAULT_LINE_WIDTH, DEFAULT_SILK_LINE_WIDTH, DEFAULT_SILK_TEXT_SIZE, DEFAULT_SILK_TEXT_WIDTH, DEFAULT_TEXT_SIZE, DEFAULT_TEXT_WIDTH, SELECTION_FILTER_OPTIONS::dimensions, F_Fab, F_SilkS, SELECTION_FILTER_OPTIONS::footprints, MAGNETIC_SETTINGS::graphics, SELECTION_FILTER_OPTIONS::graphics, SELECTION_FILTER_OPTIONS::keepouts, LAYER_CLASS_COPPER, LAYER_CLASS_COURTYARD, LAYER_CLASS_EDGES, LAYER_CLASS_FAB, LAYER_CLASS_OTHERS, LAYER_CLASS_SILK, SELECTION_FILTER_OPTIONS::lockedItems, m_ActiveLayerPreset, BOARD_DESIGN_SETTINGS::m_DefaultFPTextItems, m_DesignSettings, m_Display, PCB_DISPLAY_OPTIONS::m_DisplayGraphicsFill, PCB_DISPLAY_OPTIONS::m_DisplayPadFill, PCB_DISPLAY_OPTIONS::m_DisplayTextFill, m_FootprintTextShownColumns, m_LastImportExportPath, TEXT_ITEM_INFO::m_Layer, m_LayerPresets, m_LibWidth, BOARD_DESIGN_SETTINGS::m_LineThickness, m_MagneticItems, JSON_SETTINGS::m_params, m_PolarCoords, m_SelectionFilter, TEXT_ITEM_INFO::m_Text, BOARD_DESIGN_SETTINGS::m_TextItalic, BOARD_DESIGN_SETTINGS::m_TextSize, BOARD_DESIGN_SETTINGS::m_TextThickness, m_Use45DegreeGraphicSegments, TEXT_ITEM_INFO::m_Visible, migrateSchema0to1(), Millimeter2iu(), NO_EFFECT, SELECTION_FILTER_OPTIONS::otherItems, MAGNETIC_SETTINGS::pads, SELECTION_FILTER_OPTIONS::pads, JSON_SETTINGS::registerMigration(), JSON_SETTINGS::SetIfPresent(), SELECTION_FILTER_OPTIONS::text, TEXTS_MAX_SIZE, TEXTS_MAX_WIDTH, TEXTS_MIN_SIZE, MAGNETIC_SETTINGS::tracks, SELECTION_FILTER_OPTIONS::tracks, SELECTION_FILTER_OPTIONS::vias, and SELECTION_FILTER_OPTIONS::zones.
|
inlinevirtual |
Definition at line 42 of file footprint_editor_settings.h.
|
inherited |
Transfers ownership of a given NESTED_SETTINGS to this object.
Can be used to construct a NESTED_SETTINGS without the parent object needing to know about the implementation of the nested object;
aSettings | is the settings object to take ownership of |
aTarget | is a pointer to update to the passed in settings |
Definition at line 675 of file json_settings.cpp.
References JSON_SETTINGS::GetFilename(), JSON_SETTINGS::m_nested_settings, and traceSettings.
Referenced by NESTED_SETTINGS::SetParent().
|
protectedinherited |
Adds parameters for the given window object.
aWindow | is the target window settings object |
aJsonPath | is the path to read parameters from |
Definition at line 262 of file app_settings.cpp.
References CURSOR_SETTINGS::always_show_cursor, GRID_SETTINGS::axes_enabled, WINDOW_SETTINGS::cursor, APP_SETTINGS_BASE::DefaultGridSizeList(), WINDOW_STATE::display, GRID_SETTINGS::fast_grid_1, GRID_SETTINGS::fast_grid_2, CURSOR_SETTINGS::fullscreen_cursor, WINDOW_SETTINGS::grid, GRID_SETTINGS::last_size_idx, GRID_SETTINGS::line_width, JSON_SETTINGS::m_params, WINDOW_STATE::maximized, GRID_SETTINGS::min_spacing, WINDOW_SETTINGS::mru_path, WINDOW_SETTINGS::perspective, WINDOW_STATE::pos_x, WINDOW_STATE::pos_y, GRID_SETTINGS::show, WINDOW_STATE::size_x, WINDOW_STATE::size_y, GRID_SETTINGS::sizes, GRID_SETTINGS::snap, WINDOW_SETTINGS::state, GRID_SETTINGS::style, GRID_SETTINGS::user_grid_x, GRID_SETTINGS::user_grid_y, and WINDOW_SETTINGS::zoom_factors.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), CVPCB_SETTINGS::CVPCB_SETTINGS(), and PCBNEW_SETTINGS::PCBNEW_SETTINGS().
|
virtualinherited |
By default, this returns the list of grids available in PcbNew-based applications.
Eeschema does not allow customization of the grid. If it ever does, override this in Eeschema settings to provide a different set of defaults.
Definition at line 332 of file app_settings.cpp.
Referenced by APP_SETTINGS_BASE::addParamsForWindow(), DIALOG_GRID_SETTINGS::DIALOG_GRID_SETTINGS(), PCB_BASE_FRAME::LoadSettings(), FOOTPRINT_PREVIEW_PANEL::New(), and DIALOG_GRID_SETTINGS::TransferDataToWindow().
|
protectedinherited |
Translates a legacy wxConfig value to a given JSON pointer value.
ValueType | is the basic type of the value |
aConfig | is the legacy config to read from |
aKey | is the key (within the current path) to read |
aDest | is a string that will form a JSON pointer (key1.key2.key3) to write to |
Definition at line 587 of file json_settings.cpp.
References JSON_SETTINGS::PointerFromString().
|
protectedinherited |
Translates a legacy COLOR4D stored in a wxConfig string to a given JSON pointer value.
aConfig | is the legacy config to read from |
aKey | is the key (within the current path) to read |
aDest | is a string that will form a JSON pointer (key1.key2.key3) to write to |
Definition at line 647 of file json_settings.cpp.
References color, and JSON_SETTINGS::PointerFromString().
Referenced by APP_SETTINGS_BASE::migrateWindowConfig().
|
protectedinherited |
Translates a legacy wxConfig string value to a given JSON pointer value.
aConfig | is the legacy config to read from |
aKey | is the key (within the current path) to read |
aDest | is a string that will form a JSON pointer (key1.key2.key3) to write to |
Definition at line 623 of file json_settings.cpp.
References JSON_SETTINGS::PointerFromString().
Referenced by BITMAP2CMP_SETTINGS::MigrateFromLegacy(), MigrateFromLegacy(), GERBVIEW_SETTINGS::MigrateFromLegacy(), SYMBOL_EDITOR_SETTINGS::MigrateFromLegacy(), PROJECT_FILE::MigrateFromLegacy(), COMMON_SETTINGS::MigrateFromLegacy(), PCB_CALCULATOR_SETTINGS::MigrateFromLegacy(), APP_SETTINGS_BASE::MigrateFromLegacy(), EESCHEMA_SETTINGS::MigrateFromLegacy(), PCBNEW_SETTINGS::MigrateFromLegacy(), and APP_SETTINGS_BASE::migrateWindowConfig().
|
inlineinherited |
Fetches a value from within the JSON document.
Will return an empty optional if the value is not found or a mismatching type.
ValueType | is the type to cast to |
aPath | is the path within the document to retrieve |
Definition at line 131 of file json_settings.h.
References JSON_SETTINGS::GetJson(), and NULLOPT.
Referenced by PARAM< wxString >::Load(), COLOR_MAP_PARAM::Load(), PARAM_ENUM< EnumType >::Load(), PARAM_LAMBDA< nlohmann::json >::Load(), PARAM_SCALED< ValueType >::Load(), BOARD_DESIGN_SETTINGS::LoadFromFile(), PARAM< wxString >::MatchesFile(), COLOR_MAP_PARAM::MatchesFile(), PARAM_PATH::MatchesFile(), PARAM_ENUM< EnumType >::MatchesFile(), PARAM_LAMBDA< nlohmann::json >::MatchesFile(), and PARAM_SCALED< ValueType >::MatchesFile().
|
inherited |
Definition at line 705 of file json_settings.cpp.
References JSON_SETTINGS::GetJson(), and NULLOPT.
|
inlineprotectedvirtualinherited |
Reimplemented in PROJECT_FILE, and PROJECT_LOCAL_SETTINGS.
Definition at line 281 of file json_settings.h.
Referenced by JSON_SETTINGS::GetFullFilename(), JSON_SETTINGS::LoadFromFile(), and JSON_SETTINGS::SaveToFile().
|
inlineinherited |
Definition at line 64 of file json_settings.h.
References JSON_SETTINGS::m_filename.
Referenced by JSON_SETTINGS::AddNestedSettings(), NESTED_SETTINGS::LoadFromFile(), GERBVIEW_SETTINGS::MigrateFromLegacy(), EESCHEMA_SETTINGS::MigrateFromLegacy(), PCBNEW_SETTINGS::MigrateFromLegacy(), PANEL_COLOR_SETTINGS::OnThemeChanged(), SETTINGS_MANAGER::SaveColorSettings(), PANEL_COLOR_SETTINGS::saveCurrentTheme(), DIALOG_PRINT_USING_PRINTER::SavePrintOptions(), DIALOG_PRINT_PCBNEW::saveSettings(), NESTED_SETTINGS::SaveToFile(), PANEL_FP_EDITOR_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_PCBNEW_COLOR_SETTINGS::TransferDataFromWindow(), and PANEL_EESCHEMA_COLOR_SETTINGS::TransferDataFromWindow().
|
inherited |
Definition at line 81 of file json_settings.cpp.
References JSON_SETTINGS::getFileExt(), and JSON_SETTINGS::m_filename.
Referenced by JSON_SETTINGS::JSON_SETTINGS(), NESTED_SETTINGS::LoadFromFile(), JSON_SETTINGS::LoadFromFile(), and JSON_SETTINGS::SaveToFile().
|
inherited |
Fetches a JSON object that is a subset of this JSON_SETTINGS object, using a path of the form "key1.key2.key3" to refer to nested objects.
aPath | is a string containing one or more keys separated by '.' |
Definition at line 436 of file json_settings.cpp.
References alg::contains(), and JSON_SETTINGS::PointerFromString().
Referenced by JSON_SETTINGS::Get(), PARAM_LAMBDA< nlohmann::json >::Load(), PARAM_LIST< wxString >::Load(), PARAM_MAP< Value >::Load(), PARAM_WXSTRING_MAP::Load(), PARAM_LAMBDA< nlohmann::json >::MatchesFile(), PARAM_LIST< wxString >::MatchesFile(), PARAM_PATH_LIST::MatchesFile(), PARAM_MAP< Value >::MatchesFile(), and PARAM_WXSTRING_MAP::MatchesFile().
|
inlineprotectedvirtualinherited |
Reimplemented in PROJECT_FILE, and PROJECT_LOCAL_SETTINGS.
Definition at line 286 of file json_settings.h.
Referenced by JSON_SETTINGS::LoadFromFile().
|
inlineoverrideprotectedvirtual |
Reimplemented from APP_SETTINGS_BASE.
Definition at line 76 of file footprint_editor_settings.h.
|
inlineinherited |
Definition at line 70 of file json_settings.h.
References JSON_SETTINGS::m_location.
Referenced by SETTINGS_MANAGER::GetPathForSettingsFile().
|
inherited |
Checks if the current state of a parameter matches its default value.
aParamName | is the JSON path to the parameter |
Definition at line 324 of file json_settings.cpp.
References JSON_SETTINGS::m_params.
|
inlineinherited |
Definition at line 74 of file json_settings.h.
References JSON_SETTINGS::m_writeFile.
Referenced by APPEARANCE_CONTROLS::rebuildLayers(), PANEL_COLOR_SETTINGS::ResetPanel(), PANEL_COLOR_SETTINGS::saveCurrentTheme(), PANEL_COLOR_SETTINGS::ShowColorContextMenu(), APPEARANCE_CONTROLS::syncColorsAndVisibility(), and PANEL_COLOR_SETTINGS::updateSwatches().
|
virtualinherited |
Updates the parameters of this object based on the current JSON document contents.
Definition at line 87 of file json_settings.cpp.
References JSON_SETTINGS::m_params, JSON_SETTINGS::m_resetParamsIfMissing, and traceSettings.
Referenced by COLOR_SETTINGS::CreateBuiltinColorSettings(), NESTED_SETTINGS::LoadFromFile(), JSON_SETTINGS::LoadFromFile(), BOARD_DESIGN_SETTINGS::LoadFromFile(), COLOR_SETTINGS::migrateSchema0to1(), and SETTINGS_MANAGER::SaveColorSettings().
|
virtualinherited |
Loads the backing file from disk and then calls Load()
aDirectory | is the path to the file |
Reimplemented in BOARD_DESIGN_SETTINGS, and NESTED_SETTINGS.
Definition at line 104 of file json_settings.cpp.
References JSON_SETTINGS::getFileExt(), JSON_SETTINGS::GetFullFilename(), JSON_SETTINGS::getLegacyFileExt(), JSON_SETTINGS::Load(), JSON_SETTINGS::m_deleteLegacyAfterMigration, JSON_SETTINGS::m_filename, JSON_SETTINGS::m_legacy_filename, JSON_SETTINGS::m_nested_settings, JSON_SETTINGS::m_schemaVersion, JSON_SETTINGS::m_writeFile, JSON_SETTINGS::Migrate(), JSON_SETTINGS::MigrateFromLegacy(), parse(), JSON_SETTINGS::PointerFromString(), JSON_SETTINGS::SaveToFile(), and traceSettings.
Referenced by SETTINGS_MANAGER::SaveColorSettings().
|
inherited |
Migrates the schema of this settings from the version in the file to the latest version.
Schema migration doesn't need to be used every time a setting is added! This is intended to be more of an "escape hatch" in the event that we decide to move settings around or make other changes to a settings file format that can't simply be handled by loading a new default
Definition at line 464 of file json_settings.cpp.
References JSON_SETTINGS::m_migrators, JSON_SETTINGS::m_schemaVersion, JSON_SETTINGS::PointerFromString(), and traceSettings.
Referenced by NESTED_SETTINGS::LoadFromFile(), and JSON_SETTINGS::LoadFromFile().
|
protectedinherited |
! Migrates the find/replace history string lists
Definition at line 202 of file app_settings.cpp.
References JSON_SETTINGS::PointerFromString().
Referenced by APP_SETTINGS_BASE::MigrateFromLegacy().
|
overridevirtual |
Migrates from wxConfig to JSON-based configuration.
Should be implemented by any subclasses of JSON_SETTINGS that map to a legacy (wxConfig-based) config file.
aLegacyConfig | is a wxConfigBase holding a loaded configuration to migrate |
Reimplemented from APP_SETTINGS_BASE.
Definition at line 277 of file footprint_editor_settings.cpp.
References SETTINGS_MANAGER::AddNewColorSettings(), F_Fab, F_SilkS, From_User_Unit(), JSON_SETTINGS::fromLegacyString(), INCHES, LAYER_ANCHOR, LAYER_AUX_ITEMS, LAYER_CURSOR, LAYER_DRAWINGSHEET, LAYER_GRID, LAYER_MOD_TEXT_INVISIBLE, LAYER_NO_CONNECTS, LAYER_NON_PLATEDHOLES, LAYER_PAD_BK, LAYER_PAD_FR, LAYER_PADS_TH, LAYER_PCB_BACKGROUND, LAYER_RATSNEST, LAYER_VIA_BBLIND, LAYER_VIA_MICROVIA, LAYER_VIA_THROUGH, APP_SETTINGS_BASE::MigrateFromLegacy(), LSET::Name(), PCB_LAYER_ID_COUNT, Pgm(), JSON_SETTINGS::PointerFromString(), SETTINGS_MANAGER::Save(), SETTINGS_MANAGER::SaveColorSettings(), COLOR_SETTINGS::SetColor(), COLOR_SETTINGS::SetName(), and StringFromValue().
Referenced by PCBNEW_SETTINGS::MigrateFromLegacy().
|
private |
Schema version 0 to 1:
Definition at line 395 of file footprint_editor_settings.cpp.
References GetSettingsManager(), JSON_SETTINGS::m_manager, Pgm(), and traceSettings.
Referenced by FOOTPRINT_EDITOR_SETTINGS().
|
protectedinherited |
Migrates legacy window settings into the JSON document.
aCfg | is the wxConfig object to read from |
aFrameName | is the prefix for window settings in the legacy config file |
aJsonPath | is the prefix for storing window settings in the JSON file |
Definition at line 226 of file app_settings.cpp.
References JSON_SETTINGS::fromLegacyColor(), and JSON_SETTINGS::fromLegacyString().
Referenced by CVPCB_SETTINGS::MigrateFromLegacy(), APP_SETTINGS_BASE::MigrateFromLegacy(), and PCBNEW_SETTINGS::MigrateFromLegacy().
|
staticinherited |
Builds a JSON pointer based on a given string.
aPath | is the path in the form "key1.key2.key3" |
Definition at line 506 of file json_settings.cpp.
Referenced by JSON_SETTINGS::fromLegacy(), JSON_SETTINGS::fromLegacyColor(), JSON_SETTINGS::fromLegacyString(), JSON_SETTINGS::GetJson(), JSON_SETTINGS::JSON_SETTINGS(), NESTED_SETTINGS::LoadFromFile(), JSON_SETTINGS::LoadFromFile(), BOARD_DESIGN_SETTINGS::LoadFromFile(), JSON_SETTINGS::Migrate(), EESCHEMA_SETTINGS::migrateBomSettings(), APP_SETTINGS_BASE::migrateFindReplace(), MigrateFromLegacy(), GERBVIEW_SETTINGS::MigrateFromLegacy(), SYMBOL_EDITOR_SETTINGS::MigrateFromLegacy(), PROJECT_FILE::MigrateFromLegacy(), EDA_3D_VIEWER_SETTINGS::MigrateFromLegacy(), COMMON_SETTINGS::MigrateFromLegacy(), PCB_CALCULATOR_SETTINGS::MigrateFromLegacy(), APP_SETTINGS_BASE::MigrateFromLegacy(), EESCHEMA_SETTINGS::MigrateFromLegacy(), PCBNEW_SETTINGS::MigrateFromLegacy(), SETTINGS_MANAGER::SaveColorSettings(), NESTED_SETTINGS::SaveToFile(), PROJECT_LOCAL_SETTINGS::SaveToFile(), PROJECT_FILE::SaveToFile(), JSON_SETTINGS::Set(), and JSON_SETTINGS::SetIfPresent().
|
protectedinherited |
Registers a migration from one schema version to another.
If the schema version in the file loaded from disk is less than the schema version of the JSON_SETTINGS class, migration functions will be called one after the other until the data is up-to-date.
aOldSchemaVersion | is the starting schema version for this migration |
aNewSchemaVersion | is the ending schema version for this migration |
aMigrator | is a function that performs the migration and returns true if successful |
Definition at line 455 of file json_settings.cpp.
References JSON_SETTINGS::m_migrators, and JSON_SETTINGS::m_schemaVersion.
Referenced by BOARD_DESIGN_SETTINGS::BOARD_DESIGN_SETTINGS(), COLOR_SETTINGS::COLOR_SETTINGS(), COMMON_SETTINGS::COMMON_SETTINGS(), EESCHEMA_SETTINGS::EESCHEMA_SETTINGS(), FOOTPRINT_EDITOR_SETTINGS(), and PROJECT_LOCAL_SETTINGS::PROJECT_LOCAL_SETTINGS().
|
inherited |
Saves and frees a nested settings object, if it exists within this one.
aSettings | is a pointer to a NESTED_SETTINGS that has already been added to this one |
Definition at line 682 of file json_settings.cpp.
References JSON_SETTINGS::m_nested_settings, NESTED_SETTINGS::SetParent(), and traceSettings.
Referenced by BOARD::ClearProject(), BOARD_DESIGN_SETTINGS::~BOARD_DESIGN_SETTINGS(), ERC_SETTINGS::~ERC_SETTINGS(), NESTED_SETTINGS::~NESTED_SETTINGS(), NET_SETTINGS::~NET_SETTINGS(), and SCHEMATIC_SETTINGS::~SCHEMATIC_SETTINGS().
|
inherited |
Resets all parameters to default values.
Does NOT write to file or update underlying JSON.
Definition at line 317 of file json_settings.cpp.
References JSON_SETTINGS::m_params.
Referenced by EDA_3D_VIEWER::Process_Special_Functions(), PANEL_COMMON_SETTINGS::ResetPanel(), and PANEL_MOUSE_SETTINGS::ResetPanel().
|
virtualinherited |
Calls Store() and then writes the contents of the JSON document to a file @param aDirectory is the directory to save to, including trailing separator
c *
Reimplemented in PROJECT_FILE, PROJECT_LOCAL_SETTINGS, and NESTED_SETTINGS.
Definition at line 336 of file json_settings.cpp.
References dummy(), JSON_SETTINGS::getFileExt(), JSON_SETTINGS::GetFullFilename(), JSON_SETTINGS::m_createIfDefault, JSON_SETTINGS::m_createIfMissing, JSON_SETTINGS::m_filename, JSON_SETTINGS::m_nested_settings, JSON_SETTINGS::m_writeFile, JSON_SETTINGS::Store(), and traceSettings.
Referenced by JSON_SETTINGS::LoadFromFile(), PANEL_COLOR_SETTINGS::OnThemeChanged(), SETTINGS_MANAGER::SaveColorSettings(), PROJECT_LOCAL_SETTINGS::SaveToFile(), PROJECT_FILE::SaveToFile(), and PGM_BASE::SetLanguage().
|
inlineinherited |
Stores a value into the JSON document Will throw an exception if ValueType isn't something that the library can handle.
ValueType | is the type to store |
aPath | is a path to store in the form "key1.key2.key3" |
aVal | is the value to store |
Definition at line 155 of file json_settings.h.
References JSON_SETTINGS::PointerFromString().
Referenced by COLOR_MAP_PARAM::Store(), PARAM< wxString >::Store(), PARAM_PATH::Store(), PARAM_ENUM< EnumType >::Store(), PARAM_LAMBDA< nlohmann::json >::Store(), PARAM_SCALED< ValueType >::Store(), PARAM_LIST< wxString >::Store(), PARAM_PATH_LIST::Store(), PARAM_MAP< Value >::Store(), and PARAM_WXSTRING_MAP::Store().
|
inherited |
|
inherited |
Definition at line 714 of file json_settings.cpp.
References JSON_SETTINGS::PointerFromString().
|
inlineinherited |
Definition at line 68 of file json_settings.h.
References JSON_SETTINGS::m_filename.
Referenced by SETTINGS_MANAGER::SaveProjectAs().
|
staticinherited |
Sets the given string if the given key/path is present.
aObj | is the source object |
aTarget | is the storage destination |
Definition at line 526 of file json_settings.cpp.
References JSON_SETTINGS::PointerFromString().
Referenced by FOOTPRINT_EDITOR_SETTINGS(), and PROJECT_LOCAL_SETTINGS::PROJECT_LOCAL_SETTINGS().
|
staticinherited |
Sets the given bool if the given key/path is present.
aObj | is the source object |
aTarget | is the storage destination |
Definition at line 541 of file json_settings.cpp.
References JSON_SETTINGS::PointerFromString().
|
staticinherited |
Sets the given int if the given key/path is present.
aObj | is the source object |
aTarget | is the storage destination |
Definition at line 556 of file json_settings.cpp.
References JSON_SETTINGS::PointerFromString().
|
staticinherited |
Sets the given unsigned int if the given key/path is present.
aObj | is the source object |
aTarget | is the storage destination |
Definition at line 571 of file json_settings.cpp.
References JSON_SETTINGS::PointerFromString().
|
inlineinherited |
Definition at line 72 of file json_settings.h.
References JSON_SETTINGS::m_legacy_filename.
Referenced by SYMBOL_EDITOR_SETTINGS::SYMBOL_EDITOR_SETTINGS().
|
inlineinherited |
Definition at line 195 of file json_settings.h.
References JSON_SETTINGS::m_manager.
|
inlineinherited |
Definition at line 75 of file json_settings.h.
References JSON_SETTINGS::m_writeFile.
Referenced by PANEL_COLOR_SETTINGS::OnThemeChanged().
|
virtualinherited |
Stores the current parameters into the JSON document represented by this object Note: this doesn't do any writing to disk; that's handled by SETTINGS_MANAGER.
Definition at line 303 of file json_settings.cpp.
References JSON_SETTINGS::m_params.
Referenced by PANEL_FP_EDITOR_COLOR_SETTINGS::PANEL_FP_EDITOR_COLOR_SETTINGS(), SETTINGS_MANAGER::SaveColorSettings(), NESTED_SETTINGS::SaveToFile(), and JSON_SETTINGS::SaveToFile().
wxString FOOTPRINT_EDITOR_SETTINGS::m_ActiveLayerPreset |
Definition at line 72 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), FOOTPRINT_EDITOR_SETTINGS(), and FOOTPRINT_EDIT_FRAME::SaveSettings().
|
inherited |
! Local schema version for common app settings
Definition at line 187 of file app_settings.h.
|
inherited |
Definition at line 173 of file app_settings.h.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), DIALOG_COLOR_PICKER::DIALOG_COLOR_PICKER(), and DIALOG_COLOR_PICKER::~DIALOG_COLOR_PICKER().
|
inherited |
Active color theme name.
Definition at line 184 of file app_settings.h.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), PL_EDITOR_FRAME::CommonSettingsChanged(), SCH_BASE_FRAME::CommonSettingsChanged(), DIALOG_EXPORT_SVG::CreateSVGFile(), FOOTPRINT_EDIT_FRAME::GetColorSettings(), FOOTPRINT_WIZARD_FRAME::GetColorSettings(), SYMBOL_EDIT_FRAME::GetColorSettings(), SCH_BASE_FRAME::GetColorSettings(), PANEL_EESCHEMA_COLOR_SETTINGS::PANEL_EESCHEMA_COLOR_SETTINGS(), PANEL_FP_EDITOR_COLOR_SETTINGS::PANEL_FP_EDITOR_COLOR_SETTINGS(), PANEL_PCBNEW_COLOR_SETTINGS::PANEL_PCBNEW_COLOR_SETTINGS(), PL_DRAW_PANEL_GAL::PL_DRAW_PANEL_GAL(), DIALOG_PLOT::Plot(), PANEL_PL_EDITOR_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_FP_EDITOR_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_SYM_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_PCBNEW_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_EESCHEMA_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_PL_EDITOR_COLOR_SETTINGS::TransferDataToWindow(), DIALOG_PRINT_USING_PRINTER::TransferDataToWindow(), DIALOG_PRINT_PCBNEW::TransferDataToWindow(), and PCB_DRAW_PANEL_GAL::UpdateColors().
|
protectedinherited |
Whether or not the backing store file should be created if all parameters are still at their default values.
Ignored if m_createIfMissing is false or m_writeFile is false.
Definition at line 313 of file json_settings.h.
Referenced by JSON_SETTINGS::SaveToFile().
|
protectedinherited |
Whether or not the backing store file should be created it if doesn't exist.
Definition at line 307 of file json_settings.h.
Referenced by JSON_SETTINGS::SaveToFile().
|
inherited |
Definition at line 167 of file app_settings.h.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), SCH_EDIT_FRAME::ExecuteRemoteCommand(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), SCH_EDITOR_CONTROL::FindComponentAndItem(), PANEL_DISPLAY_OPTIONS::TransferDataFromWindow(), PANEL_EESCHEMA_DISPLAY_OPTIONS::TransferDataFromWindow(), PANEL_DISPLAY_OPTIONS::TransferDataToWindow(), and PANEL_EESCHEMA_DISPLAY_OPTIONS::TransferDataToWindow().
|
protectedinherited |
Whether or not to delete legacy file after migration.
Definition at line 319 of file json_settings.h.
Referenced by JSON_SETTINGS::LoadFromFile(), and PROJECT_FILE::PROJECT_FILE().
BOARD_DESIGN_SETTINGS FOOTPRINT_EDITOR_SETTINGS::m_DesignSettings |
Only some of these settings are actually used for footprint editing.
Definition at line 48 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDITOR_SETTINGS(), FOOTPRINT_EDIT_FRAME::LoadSettings(), and FOOTPRINT_EDIT_FRAME::SaveSettings().
PCB_DISPLAY_OPTIONS FOOTPRINT_EDITOR_SETTINGS::m_Display |
Definition at line 53 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDITOR_SETTINGS(), FOOTPRINT_EDIT_FRAME::LoadSettings(), and FOOTPRINT_EDIT_FRAME::SaveSettings().
|
protectedinherited |
The filename (not including path) of this settings file (inicode)
Definition at line 292 of file json_settings.h.
Referenced by JSON_SETTINGS::GetFilename(), JSON_SETTINGS::GetFullFilename(), NESTED_SETTINGS::LoadFromFile(), JSON_SETTINGS::LoadFromFile(), COLOR_SETTINGS::migrateSchema0to1(), COLOR_SETTINGS::operator=(), NESTED_SETTINGS::SaveToFile(), JSON_SETTINGS::SaveToFile(), and JSON_SETTINGS::SetFilename().
|
inherited |
Definition at line 169 of file app_settings.h.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), EDA_DRAW_FRAME::LoadSettings(), and EDA_DRAW_FRAME::SaveSettings().
wxString FOOTPRINT_EDITOR_SETTINGS::m_FootprintTextShownColumns |
Definition at line 66 of file footprint_editor_settings.h.
Referenced by DIALOG_FOOTPRINT_FP_EDITOR::DIALOG_FOOTPRINT_FP_EDITOR(), FOOTPRINT_EDITOR_SETTINGS(), and DIALOG_FOOTPRINT_FP_EDITOR::~DIALOG_FOOTPRINT_FP_EDITOR().
|
inherited |
Definition at line 171 of file app_settings.h.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), EDA_DRAW_FRAME::loadCanvasTypeSetting(), PCB_BASE_FRAME::LoadSettings(), FOOTPRINT_PREVIEW_PANEL::New(), PANEL_EESCHEMA_COLOR_SETTINGS::PANEL_EESCHEMA_COLOR_SETTINGS(), and EDA_DRAW_FRAME::saveCanvasTypeSetting().
wxString FOOTPRINT_EDITOR_SETTINGS::m_LastImportExportPath |
Definition at line 64 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDIT_FRAME::ExportFootprint(), FOOTPRINT_EDITOR_SETTINGS(), and FOOTPRINT_EDIT_FRAME::ImportFootprint().
std::vector<LAYER_PRESET> FOOTPRINT_EDITOR_SETTINGS::m_LayerPresets |
Definition at line 70 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), FOOTPRINT_EDITOR_SETTINGS(), and FOOTPRINT_EDIT_FRAME::SaveSettings().
|
protectedinherited |
The filename of the wxConfig legacy file (if different from m_filename)
Definition at line 295 of file json_settings.h.
Referenced by JSON_SETTINGS::LoadFromFile(), and JSON_SETTINGS::SetLegacyFilename().
|
inherited |
Definition at line 175 of file app_settings.h.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), and LIB_TREE_MODEL_ADAPTER::SaveColWidths().
int FOOTPRINT_EDITOR_SETTINGS::m_LibWidth |
Definition at line 62 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDITOR_SETTINGS(), and FOOTPRINT_EDIT_FRAME::SaveSettings().
|
protectedinherited |
The location of this settings file (.
Definition at line 298 of file json_settings.h.
Referenced by JSON_SETTINGS::GetLocation().
MAGNETIC_SETTINGS FOOTPRINT_EDITOR_SETTINGS::m_MagneticItems |
Definition at line 51 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDITOR_SETTINGS(), and FOOTPRINT_EDIT_FRAME::GetMagneticItemsSettings().
|
protectedinherited |
A pointer to the settings manager managing this file (may be null)
Definition at line 328 of file json_settings.h.
Referenced by migrateSchema0to1(), COLOR_SETTINGS::migrateSchema0to1(), and JSON_SETTINGS::SetManager().
|
protectedinherited |
A map of starting schema version to a pair of <ending version, migrator function>
Definition at line 334 of file json_settings.h.
Referenced by JSON_SETTINGS::Migrate(), and JSON_SETTINGS::registerMigration().
|
protectedinherited |
Nested settings files that live inside this one, if any.
Definition at line 304 of file json_settings.h.
Referenced by JSON_SETTINGS::AddNestedSettings(), JSON_SETTINGS::LoadFromFile(), JSON_SETTINGS::ReleaseNestedSettings(), and JSON_SETTINGS::SaveToFile().
|
protectedinherited |
The list of parameters (owned by this object)
Definition at line 301 of file json_settings.h.
Referenced by APP_SETTINGS_BASE::addParamsForWindow(), APP_SETTINGS_BASE::APP_SETTINGS_BASE(), BITMAP2CMP_SETTINGS::BITMAP2CMP_SETTINGS(), BOARD_DESIGN_SETTINGS::BOARD_DESIGN_SETTINGS(), COLOR_SETTINGS::COLOR_SETTINGS(), COMMON_SETTINGS::COMMON_SETTINGS(), COLOR_SETTINGS::CreateBuiltinColorSettings(), CVPCB_SETTINGS::CVPCB_SETTINGS(), EDA_3D_VIEWER_SETTINGS::EDA_3D_VIEWER_SETTINGS(), EESCHEMA_SETTINGS::EESCHEMA_SETTINGS(), ERC_SETTINGS::ERC_SETTINGS(), FOOTPRINT_EDITOR_SETTINGS(), GERBVIEW_SETTINGS::GERBVIEW_SETTINGS(), COLOR_SETTINGS::GetDefaultColor(), COLOR_SETTINGS::initFromOther(), JSON_SETTINGS::IsDefault(), JSON_SETTINGS::JSON_SETTINGS(), KICAD_SETTINGS::KICAD_SETTINGS(), JSON_SETTINGS::Load(), NET_SETTINGS::NET_SETTINGS(), PCB_CALCULATOR_SETTINGS::PCB_CALCULATOR_SETTINGS(), PCBNEW_SETTINGS::PCBNEW_SETTINGS(), PL_EDITOR_SETTINGS::PL_EDITOR_SETTINGS(), PROJECT_FILE::PROJECT_FILE(), PROJECT_LOCAL_SETTINGS::PROJECT_LOCAL_SETTINGS(), JSON_SETTINGS::ResetToDefaults(), PNS::ROUTING_SETTINGS::ROUTING_SETTINGS(), SCHEMATIC_SETTINGS::SCHEMATIC_SETTINGS(), JSON_SETTINGS::Store(), SYMBOL_EDITOR_SETTINGS::SYMBOL_EDITOR_SETTINGS(), and JSON_SETTINGS::~JSON_SETTINGS().
bool FOOTPRINT_EDITOR_SETTINGS::m_PolarCoords |
Definition at line 57 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDITOR_SETTINGS().
|
protectedinherited |
A list of JSON pointers that are preserved during a read-update-write to disk.
Definition at line 331 of file json_settings.h.
|
inherited |
Definition at line 177 of file app_settings.h.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), PRINTOUT_SETTINGS::Load(), BOARD_PRINTOUT_SETTINGS::Load(), DIALOG_PRINT_PCBNEW::onColorModeChanged(), DIALOG_PRINT_USING_PRINTER::OnMonochromeChecked(), SCH_PRINTOUT::PrintPage(), PRINTOUT_SETTINGS::Save(), BOARD_PRINTOUT_SETTINGS::Save(), DIALOG_PRINT_USING_PRINTER::SavePrintOptions(), DIALOG_PRINT_PCBNEW::saveSettings(), DIALOG_PRINT_USING_PRINTER::TransferDataToWindow(), and DIALOG_PRINT_PCBNEW::TransferDataToWindow().
|
protectedinherited |
Whether or not to set parameters to their default value if missing from JSON on Load()
Definition at line 322 of file json_settings.h.
Referenced by BOARD_DESIGN_SETTINGS::BOARD_DESIGN_SETTINGS(), and JSON_SETTINGS::Load().
|
protectedinherited |
Version of this settings schema.
Definition at line 325 of file json_settings.h.
Referenced by JSON_SETTINGS::JSON_SETTINGS(), NESTED_SETTINGS::LoadFromFile(), JSON_SETTINGS::LoadFromFile(), JSON_SETTINGS::Migrate(), JSON_SETTINGS::registerMigration(), and NESTED_SETTINGS::SaveToFile().
SELECTION_FILTER_OPTIONS FOOTPRINT_EDITOR_SETTINGS::m_SelectionFilter |
Definition at line 68 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDITOR_SETTINGS(), FOOTPRINT_EDIT_FRAME::LoadSettings(), and FOOTPRINT_EDIT_FRAME::SaveSettings().
|
inherited |
Definition at line 179 of file app_settings.h.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), FILE_HISTORY::Load(), EDA_DRAW_FRAME::LoadSettings(), FILE_HISTORY::Save(), SCH_EDIT_FRAME::SaveSettings(), EDA_DRAW_FRAME::SaveSettings(), and EDA_DRAW_FRAME::setupUnits().
bool FOOTPRINT_EDITOR_SETTINGS::m_Use45DegreeGraphicSegments |
Definition at line 59 of file footprint_editor_settings.h.
Referenced by FOOTPRINT_EDITOR_SETTINGS().
USER_GRID FOOTPRINT_EDITOR_SETTINGS::m_UserGrid |
Definition at line 55 of file footprint_editor_settings.h.
|
inherited |
Definition at line 181 of file app_settings.h.
Referenced by APP_SETTINGS_BASE::APP_SETTINGS_BASE(), GRID_MENU::BuildChoiceList(), DIALOG_BOARD_REANNOTATE::DIALOG_BOARD_REANNOTATE(), DIALOG_GRID_SETTINGS::DIALOG_GRID_SETTINGS(), COMMON_TOOLS::doZoomInOut(), COMMON_TOOLS::doZoomToPreset(), DIALOG_BOARD_REANNOTATE::GetParameters(), EDA_BASE_FRAME::GetWindowSettings(), COMMON_TOOLS::GridFast1(), COMMON_TOOLS::GridFast2(), COMMON_TOOLS::GridNext(), COMMON_TOOLS::GridPreset(), COMMON_TOOLS::GridPrev(), EDA_DRAW_FRAME::IsGridVisible(), SCH_BASE_FRAME::LoadSettings(), SCH_EDIT_FRAME::LoadSettings(), PL_EDITOR_FRAME::LoadSettings(), GERBVIEW_FRAME::LoadSettings(), PCB_BASE_FRAME::LoadSettings(), FOOTPRINT_PREVIEW_PANEL::New(), COMMON_TOOLS::OnGridChanged(), EDA_DRAW_FRAME::OnUpdateSelectGrid(), EDA_DRAW_FRAME::OnUpdateSelectZoom(), PANEL_EESCHEMA_COLOR_SETTINGS::PANEL_EESCHEMA_COLOR_SETTINGS(), COMMON_TOOLS::Reset(), EDA_BASE_FRAME::SaveSettings(), EDA_DRAW_FRAME::SetGridVisibility(), DIALOG_GRID_SETTINGS::TransferDataFromWindow(), DIALOG_GRID_SETTINGS::TransferDataToWindow(), ZOOM_MENU::update(), GRID_MENU::update(), EDA_DRAW_FRAME::UpdateZoomSelectBox(), and ZOOM_MENU::ZOOM_MENU().
|
protectedinherited |
Whether or not the backing store file should be written.
Definition at line 316 of file json_settings.h.
Referenced by COLOR_SETTINGS::CreateBuiltinColorSettings(), COLOR_SETTINGS::initFromOther(), JSON_SETTINGS::IsReadOnly(), JSON_SETTINGS::LoadFromFile(), JSON_SETTINGS::SaveToFile(), and JSON_SETTINGS::SetReadOnly().