Improve DRC cross-probing a bit.

This commit is contained in:
Jeff Young 2022-09-14 23:32:41 +01:00
parent 0180bcf90a
commit 12ee8b5d7c
2 changed files with 15 additions and 7 deletions

View File

@ -951,6 +951,7 @@ void EDA_DRAW_FRAME::FocusOnLocation( const VECTOR2I& aPos )
}
GetCanvas()->GetViewControls()->SetCrossHairCursorPosition( aPos );
GetCanvas()->GetViewControls()->ShowCursor( true );
}

View File

@ -476,6 +476,8 @@ void DIALOG_DRC::OnDRCItemSelected( wxDataViewEvent& aEvent )
std::vector<CN_EDGE> edges;
m_frame->GetBoard()->GetConnectivity()->GetUnconnectedEdges( edges );
if( item->Type() == PCB_ZONE_T )
{
for( const CN_EDGE& edge : edges )
{
if( edge.GetSourceNode()->Parent() == a && edge.GetTargetNode()->Parent() == b )
@ -489,6 +491,11 @@ void DIALOG_DRC::OnDRCItemSelected( wxDataViewEvent& aEvent )
}
}
}
else
{
m_frame->FocusOnItem( item, principalLayer );
}
}
else if( rc_item->GetErrorCode() == DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG )
{
BOARD_CONNECTED_ITEM* track = dynamic_cast<PCB_TRACK*>( item );