A groups children may also have children.

For instance, it could be a nested group or a footprint.

Fixes https://gitlab.com/kicad/code/kicad/issues/7025
This commit is contained in:
Jeff Young 2021-01-09 13:42:35 +00:00
parent 78dcfb2392
commit 5ae6f93af8
1 changed files with 4 additions and 4 deletions

View File

@ -98,18 +98,18 @@ void PCB_VIEW::Update( const KIGFX::VIEW_ITEM* aItem, int aUpdateFlags ) const
{ {
const FOOTPRINT* footprint = static_cast<const FOOTPRINT*>( boardItem ); const FOOTPRINT* footprint = static_cast<const FOOTPRINT*>( boardItem );
footprint->RunOnChildren( footprint->RunOnChildren(
[this, aUpdateFlags]( BOARD_ITEM* aModItem ) [this, aUpdateFlags]( BOARD_ITEM* child )
{ {
VIEW::Update( aModItem, aUpdateFlags ); VIEW::Update( child, aUpdateFlags );
} ); } );
} }
else if( boardItem && boardItem->Type() == PCB_GROUP_T ) else if( boardItem && boardItem->Type() == PCB_GROUP_T )
{ {
const PCB_GROUP* group = static_cast<const PCB_GROUP*>( boardItem ); const PCB_GROUP* group = static_cast<const PCB_GROUP*>( boardItem );
group->RunOnChildren( group->RunOnChildren(
[this, aUpdateFlags]( BOARD_ITEM* aModItem ) [this, aUpdateFlags]( BOARD_ITEM* child )
{ {
VIEW::Update( aModItem, aUpdateFlags ); Update( child, aUpdateFlags );
} ); } );
} }