Browse Source

High-contrast mode: don't render vias that don't cross high-contrast layer.

Fixes https://gitlab.com/kicad/code/kicad/issues/8740

(cherry picked from commit bbfbfc2cd2)
6.0.7
Jeff Young 4 years ago
parent
commit
d20c2fe5c5
  1. 14
      pcbnew/pcb_track.cpp

14
pcbnew/pcb_track.cpp

@ -605,6 +605,20 @@ double PCB_VIA::ViewGetLOD( int aLayer, KIGFX::VIEW* aView ) const
if( board )
visible = board->GetVisibleLayers() & board->GetEnabledLayers();
// In high contrast mode don't show vias that don't cross the high-contrast layer
if( renderSettings->GetHighContrast() )
{
PCB_LAYER_ID highContrastLayer = renderSettings->GetPrimaryHighContrastLayer();
if( LSET::FrontTechMask().Contains( highContrastLayer ) )
highContrastLayer = F_Cu;
else if( LSET::BackTechMask().Contains( highContrastLayer ) )
highContrastLayer = B_Cu;
if( !GetLayerSet().Contains( highContrastLayer ) )
return HIDE;
}
if( IsViaPadLayer( aLayer ) )
{
if( !FlashLayer( visible ) )

Loading…
Cancel
Save