Check value-follows-name case in symbol Save As.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15647

(cherry picked from commit 849a4656c8)
This commit is contained in:
Jeff Young 2023-09-14 23:54:04 +01:00
parent 2e0cdebb0c
commit 17b0bdc9fe
1 changed files with 4 additions and 0 deletions

View File

@ -605,6 +605,7 @@ void SYMBOL_EDIT_FRAME::saveSymbolAs()
LIB_ID old_lib_id = symbol->GetLibId();
wxString symbolName = old_lib_id.GetLibItemName();
wxString libraryName = old_lib_id.GetLibNickname();
bool valueFollowsName = symbol->GetValueField().GetText() == symbolName;
bool done = false;
std::unique_ptr<EDA_LIST_DIALOG> dlg;
@ -677,6 +678,9 @@ void SYMBOL_EDIT_FRAME::saveSymbolAs()
LIB_SYMBOL new_symbol( *symbol );
new_symbol.SetName( symbolName );
if( valueFollowsName )
new_symbol.GetValueField().SetText( symbolName );
m_libMgr->UpdateSymbol( &new_symbol, libraryName );
SyncLibraries( false );
m_treePane->GetLibTree()->SelectLibId( LIB_ID( libraryName, new_symbol.GetName() ) );