26#include <dialogs/dialog_bom_cfg_lexer.h>
42using namespace T_BOMCFG_T;
52 {
"name",
"bom_csv_grouped_extra" },
53 {
"path",
"bom_csv_grouped_extra.py" }
56 {
"name",
"bom_csv_grouped_by_value" },
57 {
"path",
"bom_csv_grouped_by_value.py" }
60 {
"name",
"bom_csv_grouped_by_value_with_fp" },
61 {
"path",
"bom_csv_grouped_by_value_with_fp.py" }
68 static wxAuiPaneInfo paneInfo;
70 paneInfo.Name( wxS(
"NetNavigator" ) )
71 .Caption(
_(
"Net Navigator" ) )
72 .CaptionVisible(
true )
74 .Left().Layer( 3 ).Position( 0 )
76 .BottomDockable(
false )
80 .FloatingSize( 200, 200 )
81 .FloatingPosition( 50, 200 )
90 static wxAuiPaneInfo paneInfo;
93 .Caption(
_(
"Properties" ) )
94 .CaptionVisible(
true )
96 .Left().Layer( 3 ).Position( 2 )
98 .BottomDockable(
false )
100 .MinSize( aWindow->FromDIP( wxSize( 240, 60 ) ) )
101 .BestSize( aWindow->FromDIP( wxSize( 300, 200 ) ) )
102 .FloatingSize( aWindow->FromDIP( wxSize( 300, 400 ) ) )
103 .FloatingPosition( aWindow->FromDIP( wxPoint( 50, 200 ) ) )
112 static wxAuiPaneInfo paneInfo;
114 paneInfo.Name( wxS(
"SelectionFilter" ) )
115 .Caption(
_(
"Selection Filter" ) )
116 .CaptionVisible(
true )
118 .Left().Layer( 3 ).Position( 4 )
119 .TopDockable(
false )
120 .BottomDockable(
false )
122 .MinSize( aWindow->FromDIP( wxSize( 180, -1 ) ) )
123 .BestSize( aWindow->FromDIP( wxSize( 180, -1 ) ) )
132 static wxAuiPaneInfo paneInfo;
135 .Caption(
_(
"Design Blocks" ) )
136 .CaptionVisible(
true )
138 .Right().Layer( 3 ).Position( 2 )
139 .TopDockable(
false )
140 .BottomDockable(
false )
142 .MinSize( aWindow->FromDIP( wxSize( 240, 60 ) ) )
143 .BestSize( aWindow->FromDIP( wxSize( 300, 200 ) ) )
144 .FloatingSize( aWindow->FromDIP( wxSize( 800, 600 ) ) )
145 .FloatingPosition( aWindow->FromDIP( wxPoint( 50, 200 ) ) )
157 m_FindReplaceExtra(),
162 m_FieldEditorPanel(),
170 m_RescueNeverShow( false )
251 new PARAM<bool>(
"appearance.show_sheet_filename_case_sensitivity_dialog",
360 LINE_MODE::LINE_MODE_90 ) );
377 m_params.emplace_back(
new PARAM <int>(
"drawing.junction_size_choice",
414 m_params.emplace_back(
new PARAM<int>(
"selection.highlight_netclass_colors_thickness",
446 [&](
const nlohmann::json& aObj )
448 if( !aObj.is_array() )
459 [&](
const nlohmann::json& aObj )
461 if( !aObj.is_array() )
467 const nlohmann::json& list = aObj;
608 "simulator.mouse_wheel_actions.vertical_unmodified",
610 SIM_MOUSE_WHEEL_ACTION::ZOOM, SIM_MOUSE_WHEEL_ACTION::NONE,
611 SIM_MOUSE_WHEEL_ACTION::ZOOM_VERTICALLY ) );
614 "simulator.mouse_wheel_actions.vertical_with_ctrl",
616 SIM_MOUSE_WHEEL_ACTION::PAN_LEFT_RIGHT, SIM_MOUSE_WHEEL_ACTION::NONE,
617 SIM_MOUSE_WHEEL_ACTION::ZOOM_VERTICALLY ) );
620 "simulator.mouse_wheel_actions.vertical_with_shift",
622 SIM_MOUSE_WHEEL_ACTION::PAN_UP_DOWN, SIM_MOUSE_WHEEL_ACTION::NONE,
623 SIM_MOUSE_WHEEL_ACTION::ZOOM_VERTICALLY ) );
626 "simulator.mouse_wheel_actions.vertical_with_alt",
628 SIM_MOUSE_WHEEL_ACTION::NONE, SIM_MOUSE_WHEEL_ACTION::NONE,
629 SIM_MOUSE_WHEEL_ACTION::ZOOM_VERTICALLY ) );
632 "simulator.mouse_wheel_actions.horizontal",
634 SIM_MOUSE_WHEEL_ACTION::NONE, SIM_MOUSE_WHEEL_ACTION::ZOOM_VERTICALLY ) );
682 "design_block_chooser.lib_tree.column_widths",
683 [&]() -> nlohmann::json
685 nlohmann::json ret = {};
688 ret[std::string(
name.ToUTF8() )] = width;
692 [&](
const nlohmann::json& aJson )
694 if( !aJson.is_object() )
699 for(
const auto& entry : aJson.items() )
701 if( !entry.value().is_number_integer() )
704 m_DesignBlockChooserPanel.tree.column_widths[ entry.key() ] =
705 entry.value().get<int>();
781 if( std::optional<int> optval = Get<int>(
"lib_tree.column_width" ) )
784 Set(
"lib_tree.column_width", 300 );
806 std::string gridSizePtr =
"window.grid.last_size";
808 if( std::optional<int> currentSize = Get<int>( gridSizePtr ) )
810 Set( gridSizePtr, *currentSize - 4 );
815 Set( gridSizePtr, 1 );
818 ret &= fromLegacy<bool>( aCfg,
"FootprintPreview",
"appearance.footprint_preview" );
819 ret &= fromLegacy<bool>( aCfg,
"NavigatorStaysOpen",
"appearance.navigator_stays_open" );
820 ret &= fromLegacy<bool>( aCfg,
"PrintSheetReferenceAndTitleBlock",
821 "appearance.print_sheet_reference" );
822 ret &= fromLegacy<bool>( aCfg,
"ShowHiddenPins",
"appearance.show_hidden_pins" );
823 ret &= fromLegacy<bool>( aCfg,
"ShowIllegalSymbolLibDialog",
824 "appearance.show_illegal_symbol_lib_dialog" );
825 ret &= fromLegacy<bool>( aCfg,
"ShowPageLimits",
"appearance.show_page_limits" );
826 ret &= fromLegacy<bool>( aCfg,
"ShowSheetFileNameCaseSensitivityDlg",
827 "appearance.show_sheet_filename_case_sensitivity_dialog" );
829 ret &= fromLegacy<bool>( aCfg,
"AutoplaceFields",
"autoplace_fields.enable" );
830 ret &= fromLegacy<bool>( aCfg,
"AutoplaceJustify",
"autoplace_fields.allow_rejustify" );
831 ret &= fromLegacy<bool>( aCfg,
"AutoplaceAlign",
"autoplace_fields.align_to_grid" );
833 ret &= fromLegacy<int>( aCfg,
"DefaultBusWidth",
"drawing.default_bus_thickness" );
834 ret &= fromLegacy<int>( aCfg,
"DefaultJunctionSize",
"drawing.default_junction_size" );
835 ret &= fromLegacy<int>( aCfg,
"DefaultDrawLineWidth",
"drawing.default_line_thickness" );
836 ret &= fromLegacy<int>( aCfg,
"RepeatStepX",
"drawing.default_repeat_offset_x" );
837 ret &= fromLegacy<int>( aCfg,
"RepeatStepY",
"drawing.default_repeat_offset_y" );
838 ret &= fromLegacy<int>( aCfg,
"DefaultWireWidth",
"drawing.default_wire_thickness" );
840 ret &= fromLegacy<bool>( aCfg,
"HorizVertLinesOnly",
"drawing.line_mode" );
841 ret &= fromLegacy<int>( aCfg,
"RepeatLabelIncrement",
"drawing.repeat_label_increment" );
843 ret &= fromLegacy<bool>( aCfg,
"DragActionIsMove",
"input.drag_is_move" );
845 ret &= fromLegacy<int>( aCfg,
"SelectionThickness",
"selection.thickness" );
846 ret &= fromLegacy<bool>( aCfg,
"SelectionDrawChildItems",
"selection.draw_selected_children" );
847 ret &= fromLegacy<bool>( aCfg,
"SelectionFillShapes",
"selection.fill_shapes" );
848 ret &= fromLegacy<bool>( aCfg,
"SelectPinSelectSymbolOpt",
849 "selection.select_pin_selects_symbol" );
851 ret &= fromLegacy<int>( aCfg,
"AnnotateAlgoOption",
"annotation.method" );
852 ret &= fromLegacy<int>( aCfg,
"AnnotateFilterMsg",
"annotation.messages_filter" );
853 ret &= fromLegacy<int>( aCfg,
"AnnotateSortOption",
"annotation.sort_order" );
855 ret &=
fromLegacyString( aCfg,
"bom_plugin_selected",
"bom.selected_plugin" );
861 "edit_sch_component.visible_columns" );
863 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportRevision",
"page_settings.export_revision" );
864 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportDate",
"page_settings.export_date" );
865 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportTitle",
"page_settings.export_title" );
866 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportCompany",
"page_settings.export_company" );
867 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportComment1",
"page_settings.export_comment1" );
868 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportComment2",
"page_settings.export_comment2" );
869 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportComment3",
"page_settings.export_comment3" );
870 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportComment4",
"page_settings.export_comment4" );
871 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportComment5",
"page_settings.export_comment5" );
872 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportComment6",
"page_settings.export_comment6" );
873 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportComment7",
"page_settings.export_comment7" );
874 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportComment8",
"page_settings.export_comment8" );
875 ret &= fromLegacy<bool>( aCfg,
"PageSettingsExportComment9",
"page_settings.export_comment9" );
879 constexpr int max_custom_commands = 8;
880 nlohmann::json js_cmd = nlohmann::json::array();
881 nlohmann::json js_title = nlohmann::json::array();
882 wxString cmd_key, title_key, cmd, title;
884 for(
int i = 1; i <= max_custom_commands; ++i )
887 cmd_key.Printf(
"CustomNetlistCommand%d", i );
888 title_key.Printf(
"CustomNetlistTitle%d", i );
890 if( aCfg->Read( cmd_key, &cmd ) && aCfg->Read( title_key, &title )
891 && !cmd.IsEmpty() && !title.IsEmpty() )
893 js_cmd.push_back( cmd.ToUTF8() );
894 js_title.push_back( title.ToUTF8() );
898 Set(
"netlist.custom_command_titles", js_title );
899 Set(
"netlist.custom_command_paths", js_cmd );
908 aCfg->SetPath(
"SymbolFieldEditor/Show/" );
910 nlohmann::json js = nlohmann::json( {} );
915 while( aCfg->GetNextEntry( key, index ) )
917 if( aCfg->Read( key, &value ) )
919 std::string key_utf( key.ToUTF8() );
923 js[ std::move( key_utf ) ] = value;
932 Set(
"field_editor.fields_show", js );
934 aCfg->SetPath(
"../GroupBy" );
936 while( aCfg->GetNextEntry( key, index ) )
938 if( aCfg->Read( key, &value ) )
940 std::string key_utf( key.ToUTF8() );
944 js[ std::move( key_utf ) ] = value;
953 Set(
"field_editor.fields_group_by", js );
955 aCfg->SetPath(
"../.." );
958 ret &= fromLegacy<bool>( aCfg,
"PlotModeColor",
"plot.color" );
959 ret &= fromLegacy<int>( aCfg,
"PlotFormat",
"plot.format" );
960 ret &= fromLegacy<bool>( aCfg,
"PlotFrameRef",
"plot.frame_reference" );
961 ret &= fromLegacy<bool>( aCfg,
"PlotHPGLOrg",
"plot.hpgl_origin" );
962 ret &= fromLegacy<int>( aCfg,
"PlotHPGLPaperSize",
"plot.hpgl_paper_size" );
963 ret &= fromLegacy<double>( aCfg,
"PlotHPGLPenSize",
"plot.hpgl_pen_size" );
965 ret &= fromLegacy<int>( aCfg,
"SIM_PLOT_FRAMEPos_x",
"simulator.window.pos_x" );
966 ret &= fromLegacy<int>( aCfg,
"SIM_PLOT_FRAMEPos_y",
"simulator.window.pos_y" );
967 ret &= fromLegacy<int>( aCfg,
"SIM_PLOT_FRAMESize_x",
"simulator.window.size_x" );
968 ret &= fromLegacy<int>( aCfg,
"SIM_PLOT_FRAMESize_y",
"simulator.window.size_y" );
969 ret &= fromLegacy<bool>( aCfg,
"SIM_PLOT_FRAMEMaximized",
"simulator.window.maximized" );
970 ret &=
fromLegacyString( aCfg,
"SIM_PLOT_FRAMEPerspective",
"simulator.window.perspective" );
971 ret &=
fromLegacyString( aCfg,
"SIM_PLOT_FRAMEMostRecentlyUsedPath",
"simulator.mru_path" );
972 ret &= fromLegacy<int>( aCfg,
"SimPlotPanelWidth",
"simulator.plot_panel_width" );
973 ret &= fromLegacy<int>( aCfg,
"SimPlotPanelHeight",
"simulator.plot_panel_height" );
974 ret &= fromLegacy<int>( aCfg,
"SimSignalPanelHeight",
"simulator.signal_panel_height" );
975 ret &= fromLegacy<int>( aCfg,
"SimCursorsPanelHeight",
"simulator.cursors_panel_height" );
976 ret &= fromLegacy<bool>( aCfg,
"SimPlotWhiteBg",
"simulator.white_background" );
978 ret &= fromLegacy<int>( aCfg,
"SymbolChooserHSashPosition",
"symbol_chooser.sash_pos_h" );
979 ret &= fromLegacy<int>( aCfg,
"SymbolChooserVSashPosition",
"symbol_chooser.sash_pos_v" );
980 ret &= fromLegacy<int>( aCfg,
"SymbolChooserWidth",
"symbol_chooser.width" );
981 ret &= fromLegacy<int>( aCfg,
"SymbolChooserHeight",
"symbol_chooser.height" );
982 ret &= fromLegacy<bool>( aCfg,
"SymbolChooserKeepSymbol",
"symbol_chooser.keep_symbol" );
983 ret &= fromLegacy<bool>( aCfg,
"SymbolChooserUseUnits",
"symbol_chooser.place_all_units" );
985 const std::string vlf =
"ViewlibFrame";
986 ret &= fromLegacy<bool>( aCfg, vlf +
"Maximized",
"lib_view.window.maximized" );
987 ret &=
fromLegacyString( aCfg, vlf +
"MostRecentlyUsedPath",
"lib_view.window.mru_path" );
988 ret &= fromLegacy<int>( aCfg, vlf +
"Size_x",
"lib_view.window.size_x" );
989 ret &= fromLegacy<int>( aCfg, vlf +
"Size_y",
"lib_view.window.size_y" );
990 ret &=
fromLegacyString( aCfg, vlf +
"Perspective",
"lib_view.window.perspective" );
991 ret &= fromLegacy<int>( aCfg, vlf +
"Pos_x",
"lib_view.window.pos_x" );
992 ret &= fromLegacy<int>( aCfg, vlf +
"Pos_y",
"lib_view.window.pos_y" );
993 ret &= fromLegacy<int>( aCfg,
"ViewLiblistWidth",
"lib_view.lib_list_width" );
994 ret &= fromLegacy<int>( aCfg,
"ViewCmplistWidth",
"lib_view.cmp_list_width" );
995 ret &= fromLegacy<bool>( aCfg,
996 "ViewCmpShowPinElectricalType",
"lib_view.show_pin_electrical_type" );
997 ret &= fromLegacy<bool>( aCfg, vlf +
"ShowGrid",
"lib_view.grid.show" );
998 ret &= fromLegacy<int>( aCfg, vlf +
"_LastGridSize",
"lib_view.grid.last_size" );
1000 ret &= fromLegacy<bool>( aCfg,
"RescueNeverShow",
"system.never_show_rescue_dialog" );
1005 if( aCfg->Read(
"MoveWarpsCursor", &tmp ) )
1011 auto migrateLegacyColor = [&] (
const std::string& aKey,
int aLayerId ) {
1014 if( aCfg->Read( aKey, &str ) )
1022 migrateLegacyColor(
"Color4DBusEx",
LAYER_BUS );
1034 migrateLegacyColor(
"Color4DNoteEx",
LAYER_NOTES );
1035 migrateLegacyColor(
"Color4DPinEx",
LAYER_PIN );
1036 migrateLegacyColor(
"Color4DPinNameEx",
LAYER_PINNAM );
1040 migrateLegacyColor(
"Color4DSheetEx",
LAYER_SHEET );
1045 migrateLegacyColor(
"Color4DWireEx",
LAYER_WIRE );
1056 libedit->MigrateFromLegacy( aCfg );
1072 BOM_CFG_PARSER( std::vector<EESCHEMA_SETTINGS::BOM_PLUGIN_SETTINGS>* aPluginList,
1073 const char* aData,
const wxString& aSource );
1093 wxString list = *Get<wxString>(
"bom.plugins" );
1115 nlohmann::json js = nlohmann::json::array();
1119 nlohmann::json pluginJson;
1121 pluginJson[
"name"] = plugin.
name.ToUTF8();
1122 pluginJson[
"path"] = plugin.
path.ToUTF8();
1123 pluginJson[
"command"] = plugin.
command.ToUTF8();
1125 js.push_back( pluginJson );
1133 const nlohmann::json& aObj )
1135 std::vector<EESCHEMA_SETTINGS::BOM_PLUGIN_SETTINGS> ret;
1137 wxASSERT( aObj.is_array() );
1139 for(
const nlohmann::json& entry : aObj )
1141 if( entry.empty() || !entry.is_object() )
1144 if( !entry.contains(
"name" ) || !entry.contains(
"path" ) )
1148 entry.at(
"path" ).get<wxString>() );
1150 if( entry.contains(
"command" ) )
1151 plugin.
command = entry.at(
"command" ).get<wxString>();
1153 ret.emplace_back( plugin );
1162 nlohmann::json js = nlohmann::json::array();
1166 nlohmann::json pluginJson;
1168 pluginJson[
"name"] = plugin.
name.ToUTF8();
1169 pluginJson[
"path"] = plugin.
path.ToUTF8();
1170 pluginJson[
"command"] = plugin.
command.ToUTF8();
1172 js.push_back( pluginJson );
1180 const nlohmann::json& aObj )
1182 std::vector<EESCHEMA_SETTINGS::NETLIST_PLUGIN_SETTINGS> ret;
1184 wxASSERT( aObj.is_array() );
1186 for(
const nlohmann::json& entry : aObj )
1188 if( entry.empty() || !entry.is_object() )
1191 if( !entry.contains(
"name" ) || !entry.contains(
"path" ) )
1195 entry.at(
"path" ).get<wxString>() );
1197 if( entry.contains(
"command" ) )
1198 plugin.
command = entry.at(
"command" ).get<wxString>();
1200 ret.emplace_back( plugin );
1208 const char* aLine,
const wxString& aSource ) :
1209 DIALOG_BOM_CFG_LEXER( aLine, aSource )
1211 wxASSERT( aPluginList );
1220 while( ( token = NextTok() ) != T_RIGHT )
1225 if( token == T_LEFT )
1228 if( token == T_plugins )
1250 NeedSYMBOLorNUMBER();
1251 settings.
path = FromUTF8();
1255 while( ( token = NextTok() ) != T_RIGHT )
1266 NeedSYMBOLorNUMBER();
1268 settings.
command = FromUTF8();
1275 NeedSYMBOLorNUMBER();
1277 wxString option = FromUTF8();
1279 if( option.StartsWith( wxS(
"nickname=" ), &str ) )
1280 settings.
name = str;
1287 Unexpected( CurText() );
APP_SETTINGS_BASE is a settings class that should be derived for each standalone KiCad application.
virtual bool MigrateFromLegacy(wxConfigBase *aCfg) override
Migrates from wxConfig to JSON-based configuration.
bool migrateLibTreeWidth()
Migrate the library tree width setting from a single column (Item) to multi-column.
Used for parsing legacy-format bom plugin configurations.
BOM_CFG_PARSER(std::vector< EESCHEMA_SETTINGS::BOM_PLUGIN_SETTINGS > *aPluginList, const char *aData, const wxString &aSource)
std::vector< EESCHEMA_SETTINGS::BOM_PLUGIN_SETTINGS > * m_pluginList
Color settings are a bit different than most of the settings objects in that there can be more than o...
void SetColor(int aLayer, const COLOR4D &aColor)
static const wxString PropertiesPaneName()
static const wxString DesignBlocksPaneName()
PANEL_DESIGN_BLOCK_CHOOSER m_DesignBlockChooserPanel
PANEL_ANNOTATE m_AnnotatePanel
static std::vector< BOM_PLUGIN_SETTINGS > DefaultBomPlugins()
bool migrateBomSettings()
PANEL_NETLIST m_NetlistPanel
nlohmann::json bomSettingsToJson() const
virtual bool MigrateFromLegacy(wxConfigBase *aLegacyConfig) override
Migrates from wxConfig to JSON-based configuration.
nlohmann::json netlistSettingsToJson() const
PANEL_SYM_CHOOSER m_SymChooserPanel
PAGE_SETTINGS m_PageSettings
static std::vector< BOM_PLUGIN_SETTINGS > bomSettingsFromJson(const nlohmann::json &aObj)
FIND_REPLACE_EXTRA m_FindReplaceExtra
wxString m_lastSymbolLibDir
PANEL_LIB_VIEW m_LibViewPanel
AUTOPLACE_FIELDS m_AutoplaceFields
DIALOG_IMPORT_GRAPHICS m_ImportGraphics
static std::vector< NETLIST_PLUGIN_SETTINGS > netlistSettingsFromJson(const nlohmann::json &aObj)
PANEL_FIELD_EDITOR m_FieldEditorPanel
Hold an error message and may be used when throwing exceptions containing meaningful error messages.
bool fromLegacyString(wxConfigBase *aConfig, const std::string &aKey, const std::string &aDest)
Translates a legacy wxConfig string value to a given JSON pointer value.
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 l...
bool Contains(const std::string &aPath) const
std::vector< PARAM_BASE * > m_params
The list of parameters (owned by this object)
void registerMigration(int aOldSchemaVersion, int aNewSchemaVersion, std::function< bool(void)> aMigrator)
Registers a migration from one schema version to another.
nlohmann::json & At(const std::string &aPath)
Wrappers for the underlying JSON API so that most consumers don't need json.hpp All of these function...
wxString GetFilename() const
A color representation with 4 components: red, green, blue, alpha.
Stores an enum as an integer.
Like a normal param, but with custom getter and setter functions.
Represents a map of <std::string, Value>.
virtual COMMON_SETTINGS * GetCommonSettings() const
virtual SETTINGS_MANAGER & GetSettingsManager() const
void SaveColorSettings(COLOR_SETTINGS *aSettings, const std::string &aNamespace="")
Safely save a COLOR_SETTINGS to disk, preserving any changes outside the given namespace.
T * GetAppSettings(const wxString &aFilename)
Return a handle to the a given settings by type.
COLOR_SETTINGS * GetMigratedColorSettings()
Return a color theme for storing colors migrated from legacy (5.x and earlier) settings,...
#define DEFAULT_BUS_WIDTH_MILS
The default noconnect size in mils.
#define DEFAULT_JUNCTION_DIAM
The default bus and wire entry size in mils.
#define DEFAULT_WIRE_WIDTH_MILS
The default bus width in mils. (can be changed in preference menu)
#define DEFAULT_LINE_WIDTH_MILS
The default wire width in mils. (can be changed in preference menu)
#define DEFAULT_TEXT_SIZE
Ratio of the font height to the baseline of the text above the wire.
const nlohmann::json defaultBomPlugins
Default value for bom.plugins.
const wxAuiPaneInfo & defaultSchSelectionFilterPaneInfo(wxWindow *aWindow)
const wxAuiPaneInfo & defaultPropertiesPaneInfo(wxWindow *aWindow)
const wxAuiPaneInfo & defaultNetNavigatorPaneInfo()
const int eeschemaSchemaVersion
Update the schema version whenever a migration is required.
const wxAuiPaneInfo & defaultDesignBlocksPaneInfo(wxWindow *aWindow)
@ LAYER_DEVICE_BACKGROUND
@ LAYER_SCHEMATIC_DRAWINGSHEET
@ LAYER_SELECTION_SHADOWS
@ LAYER_SCHEMATIC_BACKGROUND
PGM_BASE & Pgm()
The global program "get" accessor.
#define TO_UTF8(wxstring)
Convert a wxString to a UTF8 encoded C string for all wxWidgets build modes.
std::map< wxString, int > column_widths
Column widths, keyed by header name.
bool show_sexpr_file_convert_warning
bool show_illegal_symbol_lib_dialog
wxString edit_sheet_visible_columns
bool show_directive_labels
wxString edit_symbol_visible_columns
bool print_sheet_reference
wxString edit_label_visible_columns
bool show_sheet_filename_case_sensitivity_dialog
int design_blocks_panel_float_width
int hierarchy_panel_docked_width
int hierarchy_panel_float_width
int search_panel_dock_direction
int hierarchy_panel_docked_height
int hierarchy_panel_float_height
wxSize net_nav_panel_float_size
float properties_splitter
int design_blocks_panel_float_height
bool schematic_hierarchy_float
int design_blocks_panel_docked_width
int properties_panel_width
wxPoint net_nav_panel_float_pos
wxSize net_nav_panel_docked_size
bool show_schematic_hierarchy
bool interactive_placement
COLOR4D default_sheet_border_color
int default_repeat_offset_x
int default_repeat_offset_y
COLOR4D default_sheet_background_color
int default_wire_thickness
int default_junction_size
std::vector< double > junction_size_mult_list
int default_bus_thickness
int repeat_label_increment
int default_line_thickness
std::vector< BOM_PLUGIN_SETTINGS > plugins
std::map< std::string, int > field_widths
bool show_pin_electrical_type
std::vector< NETLIST_PLUGIN_SETTINGS > plugins
bool open_file_after_plot
bool pdf_hierarchical_links
int highlight_netclass_colors_thickness
bool draw_selected_children
bool highlight_netclass_colors
double highlight_netclass_colors_alpha
int measurements_panel_height
SIM_PREFERENCES preferences
SIM_MOUSE_WHEEL_ACTION vertical_unmodified
SIM_MOUSE_WHEEL_ACTION vertical_with_alt
SIM_MOUSE_WHEEL_ACTION horizontal
SIM_MOUSE_WHEEL_ACTION vertical_with_ctrl
SIM_MOUSE_WHEEL_ACTION vertical_with_shift
SIM_MOUSE_WHEEL_ACTION_SET mouse_wheel_actions
Functions to provide common constants and other functions to assist in making a consistent UI.