87 bool aForceDefaultProject,
91 return LoadSchematic( aFileName, SCH_IO_MGR::SCH_KICAD, aSetActive, aForceDefaultProject, aProject );
93 return LoadSchematic( aFileName, SCH_IO_MGR::SCH_LEGACY, aSetActive, aForceDefaultProject, aProject );
96 return LoadSchematic( aFileName, SCH_IO_MGR::SCH_LEGACY, aSetActive, aForceDefaultProject, aProject );
102 bool aForceDefaultProject,
105 wxFileName pro = aFileName;
108 wxString projectPath = pro.GetFullPath();
121 if( !aForceDefaultProject )
125 if( wxFileExists( projectPath ) )
139 if( !
project || aForceDefaultProject )
147 schematic->
SetRoot( rootSheet );
159 wxFileName schFile = aFileName;
160 schFile.MakeAbsolute();
164 schematic->
SetRoot( pi->LoadSchematicFile( schFile.GetFullPath(), schematic ) );
175 screen->UpdateLocalLibSymbolLinks();
186 screen->MigrateSimModels();
196 field.ClearBoundingBoxCache();
203 sheet.UpdateAllScreenReferences();
204 sheet.LastScreen()->TestDanglingEnds(
nullptr,
nullptr );
void SetPageNumber(const wxString &aPageNumber)
void Recalculate(const SCH_SHEET_LIST &aSheetList, bool aUnconditional=false, std::function< void(SCH_ITEM *)> *aChangedItemHandler=nullptr)
Update the connection graph for the given list of sheets.
SETTINGS_MANAGER * GetSettingsManager() const
virtual void ClearBoundingBoxCache()
static SETTINGS_MANAGER * s_SettingsManager
static void SetSchEditFrame(SCH_EDIT_FRAME *aSchEditFrame)
static SETTINGS_MANAGER * GetSettingsManager()
static SCHEMATIC * LoadSchematic(const wxString &aFileName, bool aSetActive, bool aForceDefaultProject, PROJECT *aProject=nullptr)
static SCH_EDIT_FRAME * s_SchEditFrame
static PROJECT * GetDefaultProject(bool aSetActive)
Instantiate the current locale within a scope in which you are expecting exceptions to be thrown.
Container for project specific data.
Holds all the data relating to one schematic.
CONNECTION_GRAPH * ConnectionGraph() const override
void SetRoot(SCH_SHEET *aRootSheet)
Initialize the schematic with a new root sheet.
SCH_SCREEN * RootScreen() const
Helper to retrieve the screen of the root sheet.
void RecomputeIntersheetRefs(const std::function< void(SCH_GLOBALLABEL *)> &aItemCallback)
Update the schematic's page reference map for all global labels, and refresh the labels so that they ...
SCH_SHEET_LIST BuildSheetListSortedByPageNumbers() const override
void SetSheetNumberAndCount()
Set the m_ScreenNumber and m_NumberOfScreens members for screens.
Schematic editor (Eeschema) main window.
SCHEMATIC & Schematic() const
Instances are attached to a symbol or sheet and provide a place for the symbol's value,...
std::vector< SCH_FIELD > & GetFields()
Container class that holds multiple SCH_SCREEN objects in a hierarchy.
void FixLegacyPowerSymbolMismatches()
Fix legacy power symbols that have mismatched value text fields and invisible power pin names.
const KIID & GetUuid() const
void SetFileName(const wxString &aFileName)
Set the file name for this screen to aFileName.
const std::vector< SCH_SYMBOL_INSTANCE > & GetSymbolInstances() const
int GetFileFormatVersionAtLoad() const
const std::vector< SCH_SHEET_INSTANCE > & GetSheetInstances() const
A container for handling SCH_SHEET_PATH objects in a flattened hierarchy.
void UpdateSheetInstanceData(const std::vector< SCH_SHEET_INSTANCE > &aSheetInstances)
Update all of the sheet instance information using aSheetInstances.
void AnnotatePowerSymbols()
Silently annotate the not yet annotated power symbols of the entire hierarchy of the sheet path list.
void UpdateSymbolInstanceData(const std::vector< SCH_SYMBOL_INSTANCE > &aSymbolInstances)
Update all of the symbol instance information using aSymbolInstances.
Handle access to a stack of flattened SCH_SHEET objects by way of a path for creating a flattened sch...
Sheet symbol placed in a schematic, and is the entry point for a sub schematic.
void SetScreen(SCH_SCREEN *aScreen)
Set the SCH_SCREEN associated with this sheet to aScreen.
bool LoadProject(const wxString &aFullPath, bool aSetActive=true)
Loads a project or sets up a new project with a specified path.
PROJECT * GetProject(const wxString &aFullPath) const
Retrieves a loaded project by name.
static const std::string LegacySchematicFileExtension
static const std::string ProjectFileExtension
static const std::string KiCadSchematicFileExtension
std::unique_ptr< T > IO_RELEASER
Helper to hold and release an IO_BASE object when exceptions are thrown.
PROJECT * GetDefaultProject()
std::vector< FAB_LAYER_COLOR > dummy
Definition of file extensions used in Kicad.