Adjust zones when moving footprint origin.

Fixes https://gitlab.com/kicad/code/kicad/issues/7825
This commit is contained in:
Jeff Young 2021-03-07 14:53:27 +00:00
parent 22b4a74bfa
commit 0fde536223
1 changed files with 11 additions and 5 deletions

View File

@ -1514,18 +1514,18 @@ void FOOTPRINT::MoveAnchorPosition( const wxPoint& aMoveVector )
switch( item->Type() )
{
case PCB_FP_SHAPE_T:
{
{
FP_SHAPE* shape = static_cast<FP_SHAPE*>( item );
shape->Move( moveVector );
}
shape->Move( moveVector );
}
break;
case PCB_FP_TEXT_T:
{
{
FP_TEXT* text = static_cast<FP_TEXT*>( item );
text->SetPos0( text->GetPos0() + moveVector );
text->SetDrawCoord();
}
}
break;
default:
@ -1533,6 +1533,12 @@ void FOOTPRINT::MoveAnchorPosition( const wxPoint& aMoveVector )
}
}
// Update the keepout zones
for( ZONE* zone : Zones() )
{
zone->Move( moveVector );
}
m_cachedBoundingBox.Move( moveVector );
m_cachedVisibleBBox.Move( moveVector );
m_cachedTextExcludedBBox.Move( moveVector );