Remove version guard from sim migration, and add migration to paste.
Fixes https://gitlab.com/kicad/code/kicad/issues/13080
This commit is contained in:
parent
e8980e9024
commit
6535f407a6
|
@ -96,11 +96,8 @@ static std::unique_ptr<SCHEMATIC> readSchematicFromFile( const std::string& aFil
|
|||
// Restore all of the loaded symbol instances from the root sheet screen.
|
||||
sheets.UpdateSymbolInstanceData( schematic->RootScreen()->GetSymbolInstances() );
|
||||
|
||||
if( schematic->RootScreen()->GetFileFormatVersionAtLoad() < 20221206 )
|
||||
{
|
||||
for( SCH_SCREEN* screen = screens.GetFirst(); screen; screen = screens.GetNext() )
|
||||
screen->MigrateSimModels();
|
||||
}
|
||||
for( SCH_SCREEN* screen = screens.GetFirst(); screen; screen = screens.GetNext() )
|
||||
screen->MigrateSimModels();
|
||||
|
||||
sheets.AnnotatePowerSymbols();
|
||||
|
||||
|
|
|
@ -146,11 +146,8 @@ SCHEMATIC* EESCHEMA_HELPERS::LoadSchematic( wxString& aFileName, SCH_IO_MGR::SCH
|
|||
|
||||
sheetList.UpdateSheetInstanceData( schematic->RootScreen()->GetSheetInstances());
|
||||
|
||||
if( schematic->RootScreen()->GetFileFormatVersionAtLoad() < 20221206 )
|
||||
{
|
||||
for( SCH_SCREEN* screen = screens.GetFirst(); screen; screen = screens.GetNext() )
|
||||
screen->MigrateSimModels();
|
||||
}
|
||||
for( SCH_SCREEN* screen = screens.GetFirst(); screen; screen = screens.GetNext() )
|
||||
screen->MigrateSimModels();
|
||||
|
||||
sheetList.AnnotatePowerSymbols();
|
||||
|
||||
|
|
|
@ -456,11 +456,8 @@ bool SCH_EDIT_FRAME::OpenProjectFiles( const std::vector<wxString>& aFileSet, in
|
|||
if( Schematic().RootScreen()->GetFileFormatVersionAtLoad() < 20221110 )
|
||||
sheetList.UpdateSheetInstanceData( Schematic().RootScreen()->GetSheetInstances());
|
||||
|
||||
if( Schematic().RootScreen()->GetFileFormatVersionAtLoad() < 20221206 )
|
||||
{
|
||||
for( SCH_SCREEN* screen = schematic.GetFirst(); screen; screen = schematic.GetNext() )
|
||||
screen->MigrateSimModels();
|
||||
}
|
||||
for( SCH_SCREEN* screen = schematic.GetFirst(); screen; screen = schematic.GetNext() )
|
||||
screen->MigrateSimModels();
|
||||
}
|
||||
|
||||
Schematic().ConnectionGraph()->Reset();
|
||||
|
|
|
@ -166,9 +166,6 @@ bool SCH_EDIT_FRAME::LoadSheetFromFile( SCH_SHEET* aSheet, SCH_SHEET_PATH* aHier
|
|||
return false;
|
||||
}
|
||||
|
||||
if( newSheet->GetScreen()->GetFileFormatVersionAtLoad() < 20221206 )
|
||||
newSheet->GetScreen()->MigrateSimModels();
|
||||
|
||||
// If the loaded schematic is in a different folder from the current project and
|
||||
// it contains hierarchical sheets, the hierarchical sheet paths need to be updated.
|
||||
if( fileName.GetPathWithSep() != Prj().GetProjectPath() && newSheet->CountSheets() )
|
||||
|
@ -505,6 +502,8 @@ bool SCH_EDIT_FRAME::LoadSheetFromFile( SCH_SHEET* aSheet, SCH_SHEET_PATH* aHier
|
|||
}
|
||||
}
|
||||
|
||||
newScreen->MigrateSimModels();
|
||||
|
||||
// Attempt to create new symbol instances using the instance data loaded above.
|
||||
sheetHierarchy.AddNewSymbolInstances( *aHierarchy );
|
||||
|
||||
|
|
|
@ -1815,6 +1815,8 @@ int SCH_EDITOR_CONTROL::Paste( const TOOL_EVENT& aEvent )
|
|||
// Save loaded screen instances to m_clipboardSheetInstances
|
||||
setClipboardInstances( tempScreen );
|
||||
|
||||
tempScreen->MigrateSimModels();
|
||||
|
||||
PASTE_MODE pasteMode = annotate.automatic ? PASTE_MODE::RESPECT_OPTIONS
|
||||
: PASTE_MODE::REMOVE_ANNOTATIONS;
|
||||
|
||||
|
|
Loading…
Reference in New Issue