Update marker view when setting excluded.
Fixes https://gitlab.com/kicad/code/kicad/issues/6254
This commit is contained in:
parent
89e21d28f0
commit
56c57c4cca
|
@ -193,7 +193,7 @@ std::vector<MARKER_PCB*> BOARD::ResolveDRCExclusions()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<MARKER_PCB*> markers;
|
std::vector<MARKER_PCB*> newMarkers;
|
||||||
|
|
||||||
for( const wxString& exclusionData : m_designSettings->m_DrcExclusions )
|
for( const wxString& exclusionData : m_designSettings->m_DrcExclusions )
|
||||||
{
|
{
|
||||||
|
@ -202,13 +202,13 @@ std::vector<MARKER_PCB*> BOARD::ResolveDRCExclusions()
|
||||||
if( marker )
|
if( marker )
|
||||||
{
|
{
|
||||||
marker->SetExcluded( true );
|
marker->SetExcluded( true );
|
||||||
markers.push_back( marker );
|
newMarkers.push_back( marker );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
m_designSettings->m_DrcExclusions.clear();
|
m_designSettings->m_DrcExclusions.clear();
|
||||||
|
|
||||||
return markers;
|
return newMarkers;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -732,9 +732,18 @@ void PCB_EDIT_FRAME::ResolveDRCExclusions()
|
||||||
BOARD_COMMIT commit( this );
|
BOARD_COMMIT commit( this );
|
||||||
|
|
||||||
for( MARKER_PCB* marker : GetBoard()->ResolveDRCExclusions() )
|
for( MARKER_PCB* marker : GetBoard()->ResolveDRCExclusions() )
|
||||||
commit.Add( marker );
|
commit.Add( marker );
|
||||||
|
|
||||||
commit.Push( wxEmptyString, false, false );
|
commit.Push( wxEmptyString, false, false );
|
||||||
|
|
||||||
|
for( MARKER_PCB* marker : GetBoard()->Markers() )
|
||||||
|
{
|
||||||
|
if( marker->IsExcluded() )
|
||||||
|
{
|
||||||
|
GetCanvas()->GetView()->Remove( marker );
|
||||||
|
GetCanvas()->GetView()->Add( marker );
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue