EEschema: Plot stroked edges over BG

Items that have BG fill need to be plotted in the background but we
still need their stroked edges to be in the FG.  This is a workaround
that overplots the edges ensuring visual similarity.  Re-working the
plot engine to support layers is a larger project.

Fixes: lp:1833428
* https://bugs.launchpad.net/kicad/+bug/1833428
This commit is contained in:
Seth Hillbrand 2019-08-20 07:01:16 -07:00
parent 213547f545
commit 6796e8fff6
1 changed files with 2 additions and 3 deletions

View File

@ -530,7 +530,7 @@ void LIB_PART::Plot( PLOTTER* aPlotter, int aUnit, int aConvert,
} }
// Not filled items and filled shapes are now plotted // Not filled items and filled shapes are now plotted
// (plot only items which are not already plotted) // Items that have BG fills only get re-stroked to ensure the edges are in the foreground
for( LIB_ITEM& item : m_drawings ) for( LIB_ITEM& item : m_drawings )
{ {
if( item.Type() == LIB_FIELD_T ) if( item.Type() == LIB_FIELD_T )
@ -542,8 +542,7 @@ void LIB_PART::Plot( PLOTTER* aPlotter, int aUnit, int aConvert,
if( aConvert && item.m_Convert && ( item.m_Convert != aConvert ) ) if( aConvert && item.m_Convert && ( item.m_Convert != aConvert ) )
continue; continue;
if( item.m_Fill != FILLED_WITH_BG_BODYCOLOR ) item.Plot( aPlotter, aOffset, fill && ( item.m_Fill != FILLED_WITH_BG_BODYCOLOR ), aTransform );
item.Plot( aPlotter, aOffset, fill, aTransform );
} }
} }