D_PAD copy ctor and operator = : fix missing copy of m_LengthPadToDie member.

This commit is contained in:
jean-pierre charras 2020-07-25 08:29:33 +02:00
parent 33af2d9a95
commit bebba1df61
1 changed files with 12 additions and 2 deletions

View File

@ -100,7 +100,9 @@ D_PAD::D_PAD( const D_PAD& aOther ) :
BOARD_CONNECTED_ITEM( aOther.GetParent(), PCB_PAD_T )
{
BOARD_CONNECTED_ITEM::operator=( aOther );
ImportSettingsFrom( aOther );
SetPadToDieLength( aOther.GetPadToDieLength() );
SetPosition( aOther.GetPosition() );
SetPos0( aOther.GetPos0() );
}
@ -111,6 +113,7 @@ D_PAD& D_PAD::operator=( const D_PAD &aOther )
BOARD_CONNECTED_ITEM::operator=( aOther );
ImportSettingsFrom( aOther );
SetPadToDieLength( aOther.GetPadToDieLength() );
SetPosition( aOther.GetPosition() );
SetPos0( aOther.GetPos0() );
@ -1171,6 +1174,13 @@ void D_PAD::ImportSettingsFrom( const D_PAD& aMasterPad )
SetAttribute( aMasterPad.GetAttribute() );
SetProperty( aMasterPad.GetProperty() );
// I am not sure the m_LengthPadToDie must be imported, because this is
// a parameter really specific to a given pad (JPC).
// So this is currently non imported
#if 0
SetPadToDieLength( aMasterPad.GetPadToDieLength() );
#endif
// The pad orientation, for historical reasons is the
// pad rotation + parent rotation.
// So we have to manage this parent rotation