bool LIB_EDIT_FRAME::SynchronizePins() { LIB_PART* part = GetCurPart(); return !m_editPinsPerPartOrConvert && ( part && ( part->HasConversion() || part->IsMulti() ) ); }
void CMP_TREE_NODE_LIB_ID::Update( LIB_ALIAS* aAlias ) { Name = aAlias->GetName(); Desc = aAlias->GetDescription(); // Parent node is the library nickname so set the LIB_ID library nickname. IsRoot = aAlias->IsRoot(); // Pre-normalized strings for fast case-insensitive matching // Search text spaces out keywords and description to penalize description // matches - earlier matches are worth more. MatchName = aAlias->GetName().Lower(); SearchText = (aAlias->GetKeyWords() + " " + Desc); // Extract default footprint text LIB_PART* part = aAlias->GetPart(); wxString footprint; if( part ) { LibId = part->GetLibId(); LibId.SetLibItemName( Name ); footprint = part->GetFootprintField().GetText(); } // If a footprint is defined for the part, // add it to the serach string if( !footprint.IsEmpty() ) { SearchText += " "; SearchText += footprint; } Children.clear(); if( part && part->IsMulti() ) { for( int u = 1; u <= part->GetUnitCount(); ++u ) AddUnit( u ); } SearchTextNormalized = false; }
bool LIB_EDIT_FRAME::SynchronizePins() { LIB_PART* part = GetCurPart(); return m_SyncPinEdit && part && part->IsMulti() && !part->UnitsLocked(); }
void LIB_EDIT_FRAME::OnUpdateSyncPinEdit( wxUpdateUIEvent& event ) { LIB_PART* part = GetCurPart(); event.Enable( part && part->IsMulti() && !part->UnitsLocked() ); event.Check( m_SyncPinEdit ); }