7
mirror of https://gitlab.com/kicad/code/kicad.git synced 2025-04-21 00:21:25 +00:00

Attempt to fix CLI test.

This commit is contained in:
Jeff Young 2025-01-25 14:59:47 +00:00
parent 9cf4dd05b3
commit 66df840353
2 changed files with 18 additions and 12 deletions

View File

@ -557,7 +557,7 @@ void SCH_REFERENCE_LIST::Annotate( bool aUseSheetNum, int aSheetIntervalId, int
GetRefsInUse( first, idList, minRefId );
LastReferenceNumber = createFirstFreeRefId( idList, minRefId );
ref_unit.m_numRef = LastReferenceNumber;
ref_unit.m_numRefStr = wxString::Format( "%d", LastReferenceNumber );
ref_unit.m_numRefStr = ref_unit.formatRefStr( LastReferenceNumber );
}
ref_unit.m_flag = 1;
@ -576,7 +576,7 @@ void SCH_REFERENCE_LIST::Annotate( bool aUseSheetNum, int aSheetIntervalId, int
{
LastReferenceNumber = FindFirstUnusedReference( ref_unit, minRefId, units );
ref_unit.m_numRef = LastReferenceNumber;
ref_unit.m_numRefStr = wxString::Format( "%d", LastReferenceNumber );
ref_unit.m_numRefStr = ref_unit.formatRefStr( LastReferenceNumber );
ref_unit.m_isNew = false;
ref_unit.m_flag = 1;
}
@ -633,7 +633,7 @@ void SCH_REFERENCE_LIST::Annotate( bool aUseSheetNum, int aSheetIntervalId, int
std::vector<int> units = { ref_unit.GetUnit() };
LastReferenceNumber = FindFirstUnusedReference( ref_unit, minRefId, units );
ref_unit.m_numRef = LastReferenceNumber;
ref_unit.m_numRefStr = wxString::Format( "%d", LastReferenceNumber );
ref_unit.m_numRefStr = ref_unit.formatRefStr( LastReferenceNumber );
ref_unit.m_isNew = false;
ref_unit.m_flag = 1;
}
@ -959,6 +959,16 @@ wxString SCH_REFERENCE_LIST::Shorthand( std::vector<SCH_REFERENCE> aList,
}
wxString SCH_REFERENCE::formatRefStr( int aNumber ) const
{
// To avoid a risk of duplicate, for power symbols the ref number is 0nnn instead of nnn.
// Just because sometimes only power symbols are annotated
if( GetSymbol() && GetLibPart() && GetLibPart()->IsPower() )
return wxString::Format( "0%d", aNumber );
return wxString::Format( "%d", aNumber );
}
#if defined( DEBUG )
void SCH_REFERENCE_LIST::Show( const char* aPrefix )
{

View File

@ -181,17 +181,10 @@ public:
wxString GetRefNumber() const
{
wxString ref;
if( m_numRef < 0 )
return wxT( "?" );
// To avoid a risk of duplicate, for power symbols the ref number is 0nnn instead of nnn.
// Just because sometimes only power symbols are annotated
if( GetSymbol() && GetLibPart() && GetLibPart()->IsPower() )
ref = wxT( "0" );
return ref << m_numRefStr;
else
return m_numRefStr;
}
int CompareValue( const SCH_REFERENCE& item ) const
@ -231,6 +224,9 @@ public:
return true; // Assume units locked when we don't have a library
}
private:
wxString formatRefStr( int aNumber ) const;
private:
friend class SCH_REFERENCE_LIST;