Automatic footprint assignment now can be done without equ file, if conditions are met:

* symbol in sch library have only single footprint filter,
* footprint filter have no wildcards,
* according footprint exists in pcb lib.
This could remove need in long equ files for lots of ICs.
This commit is contained in:
Vladimir Ur 2011-10-20 15:28:37 +04:00
parent c5f24127a2
commit 6311e4e9ea
1 changed files with 10 additions and 1 deletions

View File

@ -128,6 +128,7 @@ found in the default search paths." ),
BOOST_FOREACH( COMPONENT& component, m_components )
{
bool found = false;
m_ListCmp->SetSelection( ii++, true );
if( !component.m_Module.IsEmpty() )
@ -135,7 +136,6 @@ found in the default search paths." ),
BOOST_FOREACH( FOOTPRINT_ALIAS& alias, aliases )
{
bool found = false;
if( alias.m_Name.CmpNoCase( component.m_Value ) != 0 )
continue;
@ -170,5 +170,14 @@ any of the project footprint libraries." ),
}
}
/* obviously the last chance: there's only one filter matching one footprint */
if( !found && 1 == component.m_FootprintFilter.GetCount() ) {
/* we do not need to analyse wildcards: single footprint do not contain them */
/* and if there are wildcards it just will not match any */
FOOTPRINT_INFO *module = m_footprints.GetModuleInfo( component.m_FootprintFilter[0] );
if( module ) {
SetNewPkg( component.m_FootprintFilter[0] );
}
}
}
}