95 Prj().GetProjectPath(),
106 static std::mutex dialogMutex;
108 std::unique_lock<std::mutex> dialogLock( dialogMutex, std::try_to_lock );
111 if( !dialogLock.owns_lock() )
122 std::vector<std::shared_ptr<BUS_ALIAS>> oldAliases;
126 for(
const std::shared_ptr<BUS_ALIAS>& alias : screen->GetBusAliases() )
127 oldAliases.push_back( alias );
132 if( !aInitialPage.IsEmpty() )
161 std::vector<std::shared_ptr<BUS_ALIAS>> newAliases;
165 for(
const std::shared_ptr<BUS_ALIAS>& alias : screen->GetBusAliases() )
166 newAliases.push_back( alias );
169 if( oldAliases != newAliases )
187 int dotSize = netSettings->GetDefaultNetclass()->GetWireWidth() * sizeMultipliers[sizeChoice];
189 return std::max( dotSize, 1 );
199 if( !fn.HasName() || !
IsWritable( fn,
false ) )
220 Prj().GetProjectPath(),
225 if( !layoutfn.IsAbsolute() )
226 success = layoutfn.MakeAbsolute(
Prj().GetProjectPath() );
228 if( success && layoutfn.IsOk() && !layoutfn.FileExists() && layoutfn.HasName() )
230 if( layoutfn.DirExists() && layoutfn.IsDirWritable() )
323 if( netNavigatorPane.IsDocked() )
334 if( designBlocksPane.IsDocked() )
347 wxCHECK_RET( aCfg,
"Call to SCH_BASE_FRAME::LoadSettings with null settings" );
381 wxCHECK_RET( aCfg, wxS(
"Call to SCH_BASE_FRAME::SaveSettings with null settings" ) );
APP_SETTINGS_BASE is a settings class that should be derived for each standalone KiCad application.
const std::vector< GRID > DefaultGridSizeList() const
static wxString m_DrawingSheetFileName
the name of the drawing sheet file, or empty to use the default drawing sheet
COLOR4D GetColor(int aLayer) const
static DS_DATA_MODEL & GetTheInstance()
static function: returns the instance of DS_DATA_MODEL used in the application
void Save(const wxString &aFullFileName)
Save the description in a file.
SETTINGS_MANAGER * GetSettingsManager() const
bool IsWritable(const wxFileName &aFileName, bool aVerbose=true)
Checks if aFileName can be written.
void ShowInfoBarError(const wxString &aErrorMsg, bool aShowCloseButton=false, WX_INFOBAR::MESSAGE_TYPE aType=WX_INFOBAR::MESSAGE_TYPE::GENERIC)
Show the WX_INFOBAR displayed on the top of the canvas with a message and an error icon on the left o...
void SaveSettings(APP_SETTINGS_BASE *aCfg) override
Save common frame parameters to a configuration data file.
void LoadSettings(APP_SETTINGS_BASE *aCfg) override
Load common frame parameters from a configuration file.
static const wxString PropertiesPaneName()
SEARCH_PANE * m_searchPane
static const wxString DesignBlocksPaneName()
std::unique_ptr< EDA_SEARCH_DATA > m_findReplaceData
PROPERTIES_PANEL * m_propertiesPanel
virtual void Refresh(bool aEraseBackground=true, const wxRect *aRect=nullptr) override
FIND_REPLACE_EXTRA m_FindReplaceExtra
Provide an extensible class to resolve 3D model paths.
bool SetProject(PROJECT *aProject, bool *flgChanged=nullptr)
Set the current KiCad project directory as the first entry in the model path list.
void SetProgramBase(PGM_BASE *aBase)
Set a pointer to the application's PGM_BASE instance used to extract the local env vars.
wxString ResolvePath(const wxString &aFileName, const wxString &aWorkingPath, const EMBEDDED_FILES *aFiles)
Determines the full path of the given file name.
A color representation with 4 components: red, green, blue, alpha.
void SetDefaultPenWidth(int aWidth)
void SetDefaultFont(const wxString &aFont)
void SetGapLengthRatio(double aRatio)
void SetDashLengthRatio(double aRatio)
void UpdateAllItems(int aUpdateFlags)
Update all items in the view according to the given flags.
void MarkDirty()
Force redraw of view on the next rendering.
virtual void CommonSettingsChanged(bool aEnvVarsChanged, bool aTextVarsChanged)
Call CommonSettingsChanged() on all KIWAY_PLAYERs.
void SetInitialPage(const wxString &aPage, const wxString &aParentPage=wxEmptyString)
void SetCheckboxesFromFilter(SCH_SELECTION_FILTER_OPTIONS &aOptions)
virtual SETTINGS_MANAGER & GetSettingsManager() const
SCHEMATIC_SETTINGS * m_SchematicSettings
std::shared_ptr< NET_SETTINGS > & NetSettings()
The project local settings are things that are attached to a particular project, but also might be pa...
SCH_SELECTION_FILTER_OPTIONS m_SchSelectionFilter
virtual PROJECT_LOCAL_SETTINGS & GetLocalSettings() const
void IncrementNetclassesTicker()
virtual PROJECT_FILE & GetProjectFile() const
void IncrementTextVarsTicker()
float SplitterProportion() const
These are loaded from Eeschema settings but then overwritten by the project settings.
wxString m_SchDrawingSheetFileName
double m_DashedLineGapRatio
double m_DashedLineDashRatio
std::shared_ptr< NGSPICE_SETTINGS > m_NgspiceSettings
Ngspice simulator settings.
SCHEMATIC_SETTINGS & Settings() const
void RecordERCExclusions()
Scan existing markers and record data from any that are Excluded.
SCH_SCREEN * RootScreen() const
Helper to retrieve the screen of the root sheet.
SCH_RENDER_SETTINGS * GetRenderSettings()
void SaveSettings(APP_SETTINGS_BASE *aCfg) override
Save common frame parameters to a configuration data file.
void LoadSettings(APP_SETTINGS_BASE *aCfg) override
Load common frame parameters from a configuration file.
SCH_DRAW_PANEL * GetCanvas() const override
Return a pointer to GAL-based canvas of given EDA draw frame.
EESCHEMA_SETTINGS * eeconfig() const
PANEL_SCH_SELECTION_FILTER * m_selectionFilterPanel
KIGFX::SCH_VIEW * GetView() const override
Return a pointer to the #VIEW instance used in the panel.
void ShowSchematicSetupDialog(const wxString &aInitialPage=wxEmptyString)
void RefreshOperatingPointDisplay()
Refresh the display of any operaintg points.
wxTreeCtrl * m_netNavigator
void OnModify() override
Must be called after a schematic change in order to set the "modify" flag and update other data struc...
void SaveProjectLocalSettings() override
Save changes to the project settings to the project (.pro) file.
DIALOG_SCHEMATIC_SETUP * m_schematicSetupDialog
SCHEMATIC * m_schematic
The currently loaded schematic.
SCHEMATIC & Schematic() const
bool LoadProjectSettings()
Load the KiCad project file (*.pro) settings specific to Eeschema.
void LoadSettings(APP_SETTINGS_BASE *aCfg) override
Load common frame parameters from a configuration file.
static const wxString SearchPaneName()
void LoadDrawingSheet()
Load the drawing sheet file.
void SaveSettings(APP_SETTINGS_BASE *aCfg) override
Save common frame parameters to a configuration data file.
void RecalculateConnections(SCH_COMMIT *aCommit, SCH_CLEANUP_FLAGS aCleanupFlags)
Generate the connection data for the entire schematic hierarchy.
static const wxString SchematicHierarchyPaneName()
int GetSchematicJunctionSize()
DESIGN_BLOCK_PANE * m_designBlocksPane
static const wxString NetNavigatorPaneName()
void saveProjectSettings() override
Saves any design-related project settings associated with this frame.
bool m_ShowPinsElectricalType
Container class that holds multiple SCH_SCREEN objects in a hierarchy.
const wxString & GetFileName() const
COLOR_SETTINGS * GetColorSettings(const wxString &aName="user")
Retrieves a color settings object that applications can read colors from.
bool SaveProject(const wxString &aFullPath=wxEmptyString, PROJECT *aProject=nullptr)
Saves a loaded project.
This file is part of the common library.
COLOR4D GetLayerColor(SCH_LAYER_ID aLayer)
Helper for all the old plotting/printing code while it still exists.
static FILENAME_RESOLVER * resolver
static const std::string ProjectFileExtension
SCH_LAYER_ID
Eeschema drawing layers.
@ REPAINT
Item needs to be redrawn.
int GetUserUnits()
Return the currently selected user unit value for the interface.
PGM_BASE & Pgm()
The global Program "get" accessor.
KIWAY Kiway(KFCTL_STANDALONE)
int design_blocks_panel_float_width
int search_panel_dock_direction
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
std::vector< double > junction_size_mult_list
std::vector< GRID > grids
Common grid settings, available to every frame.
bool searchCurrentSheetOnly
std::vector< double > zoom_factors
Definition for symbol library class.
Definition of file extensions used in Kicad.
#define ZOOM_LIST_EESCHEMA